之前问过与我类似的问题,但这里的情况有点不同 - 我有一个js.erb
文件,其中我正在发布使用(private_pub
)部分如下
<% publish_to "/conversation/update_waiter" do %> $("#online_waiters").replace_html('<%= j(render :partial => "/restaurants/online_waiters")%>'); <% end %>
部分在所有用户墙上成功呈现,不会div
生成额外或重复的内容.但是在click
函数(anchor
在新渲染的部分中)停止工作.虽然它的功能在/ assets/js中定义.现在,如果我刷新页面显示部分用户,那么由于我的cookie显示的相同部分工作正常.任何帮助或想法将不胜感激
将单击处理程序附加到生成的元素的父元素,它将处理来自partials的所有生成元素.
假设你有一个div
与类content
包含所有的HTML.
$(".content").on("click", "#anchor_one", function(e) { console.log("Working!"); });
或者将它附加到 document
$(document).on("click", "#anchor_one", function(e) { console.log("Working!"); });
另一种解决方案是在js.erb
文件中添加处理程序.