0

现在,我有一个返回一些 html 并替换页面内容的部分。但对于我的生活,我无法让它摆脱渲染。

>     render(:partial => @partial)
>     => "<table>\n  <tr>\n    <td>\n      <input id=\"target_columns_\" name=\"target_columns[]\" type=\"checkbox\" value=\"id\" />\n     
> <label for=\"id\">Id</label><br />\n      <input
> id=\"target_columns_\" name=\"target_columns[]\" type=\"checkbox\"
> value=\"email\" />\n      <label for=\"email\">Email</label><br />\n  
> </td>\n    <td>\n      <input id=\"target_columns_\"
> name=\"target_columns[]\" type=\"checkbox\" value=\"created_at\" />\n 
> <label for=\"created_at\">Created at</label><br />\n      <input
> id=\"target_columns_\" name=\"target_columns[]\" type=\"checkbox\"
> value=\"updated_at\" />\n      <label for=\"updated_at\">Updated
> at</label><br />\n    </td>\n  </tr>\n</table>\n"

我已经尝试过原始的 html_safe ... 似乎没有任何效果。我只是希望它是“”我想。现在,当我在页面上替换它时,由于某种原因,它实际上呈现为文本字段。

这是替换页面内容并进行渲染的JS。

$("#field-list").html('<%= j(render(:partial => @partial)) %>');
4

2 回答 2

0

我最近遇到了同样的问题,一个好的方法是通过content_tag. 请检查此主题:

Rails 中的助手 - 构建 html 字符串时最好的方法是什么?

于 2012-10-10T22:15:33.763 回答
0
= raw html

或者:

= html.html_safe

如果你使用haml,你可以!=尝试一下

!= render(:partial => @partial)

代替

= render(:partial => @partial)
于 2018-10-24T10:12:42.807 回答