由于某种原因,我的 Rails 3 回调没有触发。这是我的表单代码:
<%= form_tag('/create', :method => "post", :remote => true ,:id => "create") do %>
<% end %>
这是 JavaScript:
<script>
$(document).ready(function() {
$('#create')
.bind('ajax:loading', function() {alert("loading!");})
.bind('ajax:success', function(data, status, xhr) {alert("success!");})
.bind('ajax:failure', function(xhr, status, error) {alert("failure!");})
.bind('ajax:complete', function() {alert("complete!");});
});
</script>
ajax post 工作完美,似乎没有其他任何东西抛出任何错误,所以我无法理解为什么没有回调正在运行。
有什么猜测吗?
编辑:
我的rails.js 看起来不错。这是我的标题。
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="/assets/jquery.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery_ujs.js?body=1" type="text/javascript"></script>
<script src="/assets/main.js?body=1" type="text/javascript"></script>
<script src="/assets/respond.js?body=1" type="text/javascript"></script>
<script src="/assets/application.js?body=1" type="text/javascript"></script>
最佳答案
将事件参数添加到函数中作为第一个参数。
function(e, data, status, xhr) {alert("成功!");})
关于javascript - Rails 3 javascript 表单回调未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8719279/