我正在使用Ajax创建投票系统,投票计数器将动态显示结果。我可以创建投票并成功使用Ajax删除投票。但是,我无法动态更新投票计数器。我做了很多次尝试和错误,没有其他选择。

在具有ID,计数器的div中的<div id="counter"><%= @micropost.thumbups.count %></div>在微博/显示页面上正确显示投票号。

在create.js.erb上,

$("#ups_form").html("<%= escape_javascript(render('microposts/down_form')) %>")

$("#counter").html('<%= @micropost.thumbups.count %>')


第二行应该使计数器在Ajax成功更新数据库之后动态更新计数。但这没有用。

我尝试了以下方法:


$("#counter").html('hello'),将显示“ hello”。这意味着CSS很好。
$("#counter").html('<%=escape_javascript @micropost.thumbups.count %>')无效。
$("#counter").html("<%= escape_javascript(render('microposts/count')) %>"),计算部分<%= @micropost.thumbups.count %>
...不知道还有什么尝试...

最佳答案

您的关联可能已加载到内存中。尝试这个:

$("#counter").html('<%= @micropost.thumbups(:reload).count %>')

07-27 23:06