我正在使用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 %>')