从 javascript rails 渲染 html
render html from javascript rails
我有一个应该输出到未正确显示的 div 的局部渲染。
我试过 index.js.haml :
= "$('.modal-body').html('#{escape_javascript(raw render("details"))}');"
= "$('.modal-body').html('#{escape_javascript(raw render("details")).html_safe}');"
= "$('.modal-body').html('#{escape_javascript(raw render("details").html_safe)}');"
= "$('.modal-body').html('#{raw escape_javascript(raw render("details"))}');"
= "$('.modal-body').html('#{raw escape_javascript(raw render("details").html_safe)}');"
= "$('.modal-body').html('#{raw escape_javascript(raw render("details")).html_safe}');"
并且它们都输出相同的以下内容:
如果我删除 escape_javascript,它就不再工作了。
$('.modal-body').html('<%=j render partial: 'details' %>'); // in HTML
$('.modal-body').html('#{j render partial: 'details'}'); // in HAML
感谢 Emu 在 ERB 中发布了答案,我在 haml 中找到了一种方法:
:plain
$('.modal-body').html('#{j render partial: 'details'}'); // in HAML
$('.modal-body').html('<%= j render partial: 'details'%>'); //in ERB
我有一个应该输出到未正确显示的 div 的局部渲染。 我试过 index.js.haml :
= "$('.modal-body').html('#{escape_javascript(raw render("details"))}');"
= "$('.modal-body').html('#{escape_javascript(raw render("details")).html_safe}');"
= "$('.modal-body').html('#{escape_javascript(raw render("details").html_safe)}');"
= "$('.modal-body').html('#{raw escape_javascript(raw render("details"))}');"
= "$('.modal-body').html('#{raw escape_javascript(raw render("details").html_safe)}');"
= "$('.modal-body').html('#{raw escape_javascript(raw render("details")).html_safe}');"
并且它们都输出相同的以下内容:
如果我删除 escape_javascript,它就不再工作了。
$('.modal-body').html('<%=j render partial: 'details' %>'); // in HTML
$('.modal-body').html('#{j render partial: 'details'}'); // in HAML
感谢 Emu 在 ERB 中发布了答案,我在 haml 中找到了一种方法:
:plain
$('.modal-body').html('#{j render partial: 'details'}'); // in HAML
$('.modal-body').html('<%= j render partial: 'details'%>'); //in ERB