javascript - 将其中的一部分替换为js

标签 javascript ruby-on-rails ruby-on-rails-3

我有一个 rhtml 部分“mypartial”,其中包含一个如下所示的 js block :

<script type="text/javascript">new Ajax.Updater([...]);</script>

在 rjs 模板中,我调用

page.replace "container", :partial => "mypartial"

除了脚本 block 之外,替换工作正常。该 block 及其 javascript 不会写入 html(我使用 firefox/web dev 工具栏 -> 显示生成的源进行检查)。

我真的必须通过页面 << "myjs()"; 在我的 rjs 模板中编写 js 部分吗?

最佳答案

我觉得很奇怪,您的 page.replace 会省略脚本标记...如果您使用 javascript_tag 帮助程序怎么办?它也省略了吗?

另一种选择是将该 JavaScript 包含在从布局加载的 JavaScript 文件之一中。那么您就不必担心拆卸和更换它。当然,除非您要插入 Ruby 变量。

如果您在 JavaScript 中使用 Ruby 变量,那么也许您的 AJAX 调用应该渲染一个 js.erb 模板,而不是 RJS,该模板会抛出 JavaScript,然后渲染部分内容。

关于javascript - 将其中的一部分替换为js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4520026/

相关文章:

ruby-on-rails - Heroku SSL 表示受信任,但重定向到 http

ruby-on-rails - 使用 pry-rails 时如何清理 rails 控制台输出?

ruby-on-rails - 连接范围为 :has_many :through association

javascript - 在向链上传递 promise 的同时更改数据结果?

javascript - 如何使用 jQuery 访问 AJAX 中的 JSON 对象?

javascript - react 组件渲染但在 Rails 应用程序中的页面上不可见

ruby-on-rails - 如何使用MongoDB中的ActionController::Live下载CSV数据?

ruby-on-rails - 在安装的 rails 引擎中扩展模型的功能

javascript - ng-init 与 Controller 中的函数,使用 $parent 时哪个是更好的做法?

javascript - Android 上的应用程序崩溃 (React-Native)