[英]Display HTML tags as HTML in AJAX response
我有控制器方法:
def do_it
@result = "some <b>another</b>"
respond_to do | format |
format.js {render :layout => false}
end
end
和do_it.js.erb:
$( "#in" ).html("<b>hello</b> <br /> <%= @result %>");
当我调用此方法时,我会在浏览器中将“ hello”显示为粗体,将“ another”显示为带有标签的普通文本。
我需要隐藏所有html标记,并将“另一个”显示为粗体文本。 我该如何解决?
<%=%>默认情况下转义HTML代码。 您可以通过以下方式阻止它执行此操作:
$( "#in" ).html("<b>hello</b> <br /> <%= raw @result %>");
要么
@result = "some <b>another</b>".html_safe()
我对红宝石的了解并不多,但是我发表在这篇文章中可能与您的问题有关:
1- rails:如何对字符串进行html编码/转义? 有内置的吗?
我认为您应该对原始字符串进行html编码
@result = "some <b>another</b>"
然后在显示时对其进行html解码。 祝好运
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.