我想发布一个相关的跟进,因为我在弄清楚如何为此实现回调时遇到了一些困难。我发现这篇文章很有帮助:http ://www.simonecarletti.com/blog/2010/06/unobtrusive-javascript-in-rails-3/
秘诀是添加一个 HTML5 数据属性,例如,data-complete
或者(更好地)将 Rails 提供的ajax:complete
或ajax:success
回调绑定到您的表单(参见上面链接的文章中的 4. 远程 JavaScript 回调):
来自文章:
jQuery(function($) {
// create a convenient toggleLoading function
var toggleLoading = function() { $("#loading").toggle() };
$("#tool-form")
.bind("ajax:loading", toggleLoading)
.bind("ajax:complete", toggleLoading)
.bind("ajax:success", function(event, data, status, xhr) {
$("#response").html(data);
});
});
咖啡脚本示例:
$("#new_post").on("ajax:success", (e, data, status, xhr)->
console.log data
)