当我使用远程调用或 jQuery 远程加载部分/内容时,jquery ujs 不起作用

标签 jquery ruby-on-rails ruby-on-rails-3

我有一段 jQuery 代码,它用一些内容填充页面上的元素:

 var content = $("#note_"+note.id).html();
 $("another_div").html(content);

这很好地替换了另一个 div 的 html,但问题是任何数据远程属性都不再对“another_div”内的任何内容起作用。我认为问题在于 jquery_ujs 对于页面加载时页面上的项目非常有效,但如果我远程加载内容,我就会失去该功能。

我该如何解决这个问题?我对此也很感兴趣,因为它对远程加载部分的影响

最佳答案

我以前经历过这种情况,问题是 jQuery 已经在加载时解析了所有 DOM 元素,因此当 DOM 更改时不会自动再次调用。您需要手动调用 another_div 的验证解析。您可以使用以下方法来完成此操作:

$.validator.unobtrusive.parse("#another_div")

编辑:有点黑客行为,但我们可能需要彻底改变 jQuery

var $main= $("顶级标签");

// Unbind validation
$main.unbind();
$main.data("validator", null);

// Reparse document
$.validator.unobtrusive.parse(document);

//Re add to Main
$main.validate($main.data("unobtrusiveValidation").options);

关于当我使用远程调用或 jQuery 远程加载部分/内容时,jquery ujs 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9950332/

相关文章:

javascript - jQuery:检查数组是否为多维的函数

ruby-on-rails - 如何在 ruby​​ on Rails 中列出现有表的列名称和字段类型?

ruby-on-rails - 如何使用范围作为 POST 数据到 Rails Controller 的参数之一

ruby-on-rails - 内存缓存 :expires_in on Heroku for fragment caching

ruby-on-rails - 通过双层has_many关系检索结果集

ruby-on-rails - Ruby on Rails 中 <%= ... %> 和 <% ... %> 有什么区别

javascript - 使用 JqPlot 更改圆环图的主题

javascript - 在脚本模板内运行 javascript/jquery(脚本标签中的脚本)

javascript - 移动设备的动画切换按钮

ruby-on-rails - Bootstrap 模式中的 Rails 表单