在我的项目中,我们在使用一些实例变量的部分中有内联 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/