Jquery 单击事件在第一次单击时不执行

标签 jquery ruby-on-rails

我不明白为什么我必须在 JQuery 中单击链接两次:

$(function(){
    $("#more_reviewers").click(function(){
        $("#reviewer_list").html("<%= escape_javascript(render 'restaurants/restaurant_reviewer_list', :venue => @restaurant, :limit => @restaurant.reviews.count) %>");
    });
});

当我单击时, View 会覆盖显示的审阅者的限制并显示所有审阅者。我不明白的是为什么我需要点击同一个按钮两次。类似问题的其他答案都对我不起作用,因为问题涉及 cookie 依赖,或者其他我没有做的事情。

我刚刚测试了另一件事:当我放置显示事件类型的警报时,它第一次没有显示任何内容(就好像 JS 脚本未绑定(bind)到链接一样),然后第二次它会使用正确的事件发出警报输入(“单击”)。

rails中ID为“more_reviewers”的链接如下:

<%= link_to "more", "#", :id => "more_reviewers", :remote => true  %>

链接显示正确的项目,但仅在单击两次后才显示(第一次,页面上似乎没有任何变化)

我们将非常感谢您的帮助。

最佳答案

你的 show.js.erb 应该只包含:

$("#reviewer_list").html("<%= escape_javascript(render 'restaurants/restaurant_reviewer_list', :venue => @restaurant, :limit => @restaurant.reviews.count) %>");

现在,您将点击事件绑定(bind)到已点击的链接,这意味着您必须再次点击它。

关于Jquery 单击事件在第一次单击时不执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15541208/

相关文章:

javascript - 在 Ruby on Rails 中安装 Olark

jquery - 在 select2 jquery 插件的数据部分传递一个数组

javascript - 使用 js 在 ougoing 调用中从 Twilio 获取 CallSid

ruby-on-rails - 在 Rails 中如何使用带索引的 find_each 方法?

javascript - 下拉 Javascript 错误 : object doesn't support property or method 'matches'

ruby-on-rails - 最佳实践 : Multiple categories - best plugin for it (acts as taggable, 充当树,...)

ruby-on-rails - 无法使用 Rails Active Storage 从 S3 检索文件

jquery - Twitter Bootstrap 警报可以淡入淡出吗?

javascript - a.nodeName is undefined Jquery错误

JQuery UI CSS 样式表不起作用