使用Rails';查看javascript模板内的帮助程序
我希望能够在javascript模板中使用rails的一些视图和表单帮助程序,例如使用Rails';查看javascript模板内的帮助程序,javascript,ruby-on-rails,template-engine,form-helpers,eco,Javascript,Ruby On Rails,Template Engine,Form Helpers,Eco,我希望能够在javascript模板中使用rails的一些视图和表单帮助程序,例如或。我读到建议在一些javascript变量中将erb预呈现为字符串,然后从模板中调用它(在调用js模板之前,它必须可用)。所以我可以这样做: 查看_helpers.js.erb 或 ERB模板:views/people/index.html.ERB (保存在app/views/people/view\u helpers.js.erb中) “人员/视图\u帮助程序”%> 我处理这个问题是完全错误的还是遗漏了什么?
或
。我读到建议在一些javascript变量中将erb预呈现为字符串,然后从模板中调用它(在调用js模板之前,它必须可用)。所以我可以这样做:
查看_helpers.js.erb
或
ERB模板:views/people/index.html.ERB
(保存在app/views/people/view\u helpers.js.erb中)
“人员/视图\u帮助程序”%>
我处理这个问题是完全错误的还是遗漏了什么?谢谢。是的,有可能。您甚至可以将其与partials一起使用: 更新_js.js.erb:
$('#element').html('<%= escape_javascript(render(:partial => @partial, :locals => {:my_var => @item })) %>');
如果您想用AJAX调用这个js,只需将:remote=>true
传递到您的链接
<%= link_to 'replace content', item_path(@item), :remote => true %>
true%>
是的,这是可能的。您甚至可以将其与partials一起使用:
更新_js.js.erb:
$('#element').html('<%= escape_javascript(render(:partial => @partial, :locals => {:my_var => @item })) %>');
如果您想用AJAX调用这个js,只需将:remote=>true
传递到您的链接
<%= link_to 'replace content', item_path(@item), :remote => true %>
true%>
你读过这个答案吗?我认为有一些关于你的问题的有用信息。不,错过了那一条,而且它似乎起到了作用-我错过了一个包含到ActionView::Helpers
。谢谢你读过这个答案吗?我认为有一些关于你的问题的有用信息。不,错过了那一条,而且它似乎起到了作用-我错过了一个包含到ActionView::Helpers
。谢谢
$('#element').html('<%= escape_javascript(render(:partial => @partial, :locals => {:my_var => @item })) %>');
respond_to do |format|
format.js do
render :update_js do |page|
page.replace_html "element", :partial => @partial
end
end
end
<%= link_to 'replace content', item_path(@item), :remote => true %>