gpt4 book ai didi

jquery - Rails jQuery UJS 回调未触发

转载 作者:行者123 更新时间:2023-12-03 22:46:52 26 4
gpt4 key购买 nike

我正在尝试触发远程链接的 ajax:success 回调。我使用的是 Rails 3.0.8 和 jquery-rails 1.0.11。我运行 jquery 生成器来安装 javascript。 jquery 和 jquery_ujs 都包含在我的默认值中,我可以验证它们是否包含在页面中。

这是我的 JavaScript:

jQuery(function($) {
$("#deactivate")
.bind("ajax:success", function() {
alert("HELLO");
})
.bind("ajax:error", function() {
alert("GOODBYE");
}
);
});

链接:

= link_to 'Deactivate', activate_patient_path(patient), :id => 'deactivate', :class => "button button-red", :remote => true

激活操作:

def activate
patient = Patient.find(params[:id])
patient.do_not_call = !patient.do_not_call
if patient.save
render :nothing => true
else
render :status => 500, :nothing => true
end
end

ajax 调用似乎工作正常。操作被触发,我可以看到数据库中的更改。但是,ajax 回调不会被触发。我无法让他们中的任何一个人工作。我可以让其他事件(例如点击)完美运行。

如果我在 Firebug 中调试rails_ujs,我会看到以下代码从 Rails ajax block 运行:

success: function(data, status, xhr) {
element.trigger('ajax:success', [data, status, xhr]);
}

我被难住了。有什么想法吗?

最佳答案

确保在rails.js之后没有再次包含jquery.js...我遇到了类似的问题,其中jquery.js被包含了两次,并且rails.js被包含在中间。

关于jquery - Rails jQuery UJS 回调未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6406050/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com