在我的index.html.erb
页面中,当从MSSQL查询数据时,它显示为
Me&Mine
。我试过这个:
$("#3").text("<%= escape_javascript(raw render(:partial => "var") %>");
但它不起作用。
index.html.erb:
<%= link_to "Link", {:action => "AjaxView",:col => "colname"},
:update => "Ajaxcall", :remote => true %>
<tr>
<td id="#3" style="height:25px">data displayed here</td>
控制器:
def AjaxView
@vars= Var.find(:all,:conditions => { :varName=> "one" },:select=>(params[:col]))
respond_to do |format|
format.js { render :layout=>false }
end
end
AjaxView.js.erb:
if ( @col.to_s == "colName") {
$("#3").text("<%= escape_javascript(render(:partial => "var") %>");
}
elsif ( @col.to_s == "colName1")
{
$("#2").text("<%= escape_javascript(render(:partial => "var") %>");
}
_var.html.erb:
<%= var.col1 %>
如何显示Me&Mine
而不是Me&Mine
?
答案 0 :(得分:2)
您是否尝试过使用html_safe?
答案 1 :(得分:0)
转换它:
$("#3").text("<%= escape_javascript(raw render(:partial => "var") %>");
为:
$("#3").html("<%= escape_javascript(raw render(:partial => "var") %>");
它会正常工作。
这是因为当您使用纯文本的“text”而没有任何格式时,因此无法呈现“&amp;”并打印其原始形式。但是使用HTML会使用标记/格式化来呈现它。