Rails 3.2+jQuery+render partial in js.erb=损坏的HTML元素

Rails 3.2 + jQuery + render partial in js.erb = broken HTML elements

本文关键字:损坏 HTML 元素 erb js 2+jQuery+render partial in Rails      更新时间:2023-09-26

任务非常简单:使用OnChangeAJAX函数渲染部分模板。在执行了带有render的js.erb之后,我在页面上得到了损坏的HTML标记——新的所有渲染元素。在本例中,它将‘a>‘添加到链接名称中,因此DOM包含"New branda>"

#partial
<%= link_to 'New Brand', new_brand_path %>
#controller-------------------------
...
format.js
#parent view------------------------
<div id="partial-id">
    <%= render 'partial' %>
</div>
#action_script.js.rjs---------------
$("#partial-id").html("<%= escape_javascript(render ('partial')).html_safe %>");

我们将非常感谢您的建议,我已经花了几个小时试图找到解决方案。

当我从Prototype切换到jQuery时,问题就解决了。因此,*action_script.js.erb*运行良好,在这种情况下不需要.html_safe

对于WODstack,我们经常使用它,但从未使用过.html_safe.

只要去掉你的html_safe,你就应该没事了。