[英]Ajax Call back Doesnt respond
我有与此问题相同的问题, Ajax回调不适用于Rails 3.0.5和jQuery 1.5.1 。 我不明白答案,但是。 我已经找到了导致问题的原因,但不确定为什么会导致问题以及如何解决。 我正在使用Kaminari宝石。
请帮帮我。
在我看来:
<div id="paginator">
<%= paginate @user, params: {id: nil, pgsz: 20}, remote: true %>
</div>
在我的控制器中 :
@user = Kaminari.paginate_array(@properties, total_count: @search_result.total_count).page(@pg).per(@pgsz)
respond_to do |format|
format.js
format.html
end
在我的Show.js.erb中
$('#list').html("<%=j (render 'search_result_list') %>");
$('#paginator').html("<%=j (paginate(@user, params: {id: nil, pgsz: 20}, remote: true).to_s) %>");
在我监视ajax的另一个JS文件中
$('#paginator')
.on("ajax:send", function () {
// Run a spinner
console.log("=====BEfore SEND");
})
.on("ajax:complete", function (e, data, status, xhr) {
// Stop the spinner
console.log("=====Afte SEND");
})
所以我想出了$('#paginator').html("<%=j (paginate(@user, params: {id: nil, pgsz: 20}, remote: true).to_s) %>");
该行导致不回调ajax:successs or ajax:complete
。 但是如果我将$('#paginator').html
为 $('#paginator').append
回调,则会发生,但这不是我所需要的。
更新 :
刚刚发现它不仅$('#paginator').html("<%=j (paginate(@user, params: {id: nil, pgsz: 20}, remote: true).to_s) %>");
这是造成的,但是如果我只是将其修改为$('#paginator').html("Hey");
也不会导致回调。
知道为什么会这样吗?
尝试更改控制器中format
的顺序。
@user = Kaminari.paginate_array(@properties, total_count: @search_result.total_count).page(@pg).per(@pgsz)
respond_to do |format|
format.html
format.js
end
我遇到了类似的问题,最后添加format.js
。 在html之后,我也有format.json
,不确定是否需要这个。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.