Rails 3.2 + jQuery +在js.erb = HTML元素中渲染部分

时间:2012-02-02 07:58:07

标签: javascript jquery ruby-on-rails ajax render

任务非常简单:使用OnChange AJAX函数渲染部分模板。 执行带有渲染的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 %>");

建议将受到高度赞赏,我已经花了几个小时试图找到解决方案。

2 个答案:

答案 0 :(得分:2)

一旦我从 Prototype 切换到 jQuery ,问题就解决了。所以* action_script.js.erb *效果很好,在这种情况下不需要.html_safe

答案 1 :(得分:0)

对于使用WODstack的我们,我们使用了很多,但我们永远不会使用.html_safe。

只需删除你的html_safe就可以了。