Rails2: RJS -当页面远程更新时,Javascript事件不工作



我在我当前的项目中使用RJS。

我有数据表行和最后一列包含一个按钮,绑定javascript click函数。

现在我必须执行AJAX并将新创建的行附加到表中。它工作得很好。这是create.rjs模板文件。

page.insert_html(:bottom, "products", :partial => "product_row.html.erb", :locals => {:product => @product})

JS代码:

jQuery(document).ready(function(){
  jQuery("button.add_color").click(function(){
    alert('ok');
  });
});

一切工作正常,除了javascript click事件不为新创建的行工作。

请帮助如何保持绑定javascript事件的新添加的DOM由AJAX?

我认为你应该使用jQuery的.delegate方法:

jQuery(document).ready(function(){
  jQuery('body').delegate('button.add_color', click, function(){
    alert('ok');
  });
});

来自delegate的文档:

根据一组特定的根元素,为现在或将来匹配选择器的所有元素附加一个或多个事件处理程序。

相关内容

  • 没有找到相关文章

最新更新