Rails - 如何在 html 响应中渲染 js
我有一个动作“index”,当通过ajax调用时,会呈现index.js,它会呈现部分内容:
$("#content").html("<%= escape_javascript(render :partial => 'index') %>");
如何在html响应中使同样的事情发生? 我尝试过:
format.html { render "index.js" }
虽然我没有收到任何错误,但 js 代码似乎没有运行,因为部分没有渲染。
I have an action 'index', that when called via ajax, renders index.js which renders a partial:
$("#content").html("<%= escape_javascript(render :partial => 'index') %>");
How do I make the same thing happen in the html response?
I tried:
format.html { render "index.js" }
And although I don't get any errors, the js code doesn't seem to run, because the partial doesn't render.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您是否尝试过将脚本包装在
标记内?
您的
index.html.erb
看起来像这样:Have you tried wrapping the script inside
<script>
tag?Your
index.html.erb
would look like this:默认渲染是 render :action => 的快捷方式:action_name。要指定文件系统路径,请使用 render :file => “index.js”
The default render is a shortcut for
render :action => :action_name
. To specify a filesystem path userender :file => "index.js"