javascript - 内联 Javascript 在 ruby​​ on Rails 3.1 中重新渲染部分时无法正常工作

标签 javascript jquery ruby-on-rails ruby-on-rails-3.1

在我的项目中,我们在使用一些实例变量的部分中有内联 JavaScript。当我们在成功的 ajax 调用后重新渲染该部分时,该脚本并未运行。

你能帮我解决这个问题吗?

例如

_partial.html.erb

 <div class="someclass"></div>
 <script>
    $(document).ready(function(){
       $(".someclass").hide();
    });
 </script>

从 js.erb 文件替换此部分时,scrip 标记未运行。

最佳答案

您的页面已加载。 ready 事件很久以前就已经过去了,现在没有人在听。

因此,如果 Ajax 加载脚本中有 $(document).ready,则代码将永远不会被执行。

解决方案:

删除“ready”事件并直接触发代码:

 <div class="someclass"></div>
 <script>
   $(".someclass").hide();
 </script>

关于javascript - 内联 Javascript 在 ruby​​ on Rails 3.1 中重新渲染部分时无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16505425/

相关文章:

javascript - 我正在尝试找到一个解决方案来在我的 MVC ASP.NET 应用程序中构建 CSS 字符串,请考虑一下?

Javascript-随时间间隔改变背景颜色不透明度

javascript jquery deferred 无法与worker一起使用?

javascript - 提交位于不同页面的表单

javascript - 如何从 javascript 检测 MathML 标签支持 (<mfrac>,<mtable>)?

javascript - 如何通过表单上传文件后清除输入字段

ruby-on-rails - 如何使用 socket.io 识别/验证用户

ruby-on-rails - 使用 ransack 按空列表搜索多对多关系

ruby-on-rails - 如何找到导致 rake 测试任务终止的文件/测试?

javascript - 从函数 Javascript 设置变量 PHP 的值