【问题标题】:Jquery methods are not getting loaded form .js fileJquery 方法没有从 .js 文件中加载
【发布时间】:2013-09-28 10:10:54
【问题描述】:

我正在使用 Rails 4 和 ruby​​ 2.0

  1. 我的应用中包含了 select2 jquery 插件。
  2. 我在 js 文件中包含以下 jquery 方法,以将 select2 插件功能应用于选择框

     $('#order_location_id').select2(); 
    
  3. 这是分配 select2 功能的选择框。

     <%= f.collection_select :location_id, Location.all, :id, :name, prompt: true, :required => true,  :class => 'chosen-select' %>
    

我面临的问题是: 如果我用户 $(document).ready(); : jquery 方法仅在刷新整个页面时才应用于选择框,并且在单击后退按钮或通过单击该页面的链接到达页面时不应用。

所以我使用了 $(document).(page:load, function(){..}); : 这里面临的问题是,刷新页面时 jquery 方法不会应用于选择框,但是当我从其他页面导航时它会被应用。

这个问题不仅仅针对 select2 插件。所有其他jquery方法都是一样的,加载jquery方法时存在一些问题。 除了 $(document).ready(); 之外,我不知道该使用什么。和 $(document).on(page:load, function{..});

谁能帮帮我。

【问题讨论】:

  • 检查您的
  • 在这两种情况下,我的选择代码都是相同的,具有相同的 id
  • 检查你的控制台看看是否有任何错误发生

标签: jquery ruby-on-rails jquery-ui ruby-on-rails-4


【解决方案1】:

您可以使用 jquery 实时事件here,如果您使用的是最新版本的 jquery,则语法会更改而不是使用 .live,我们使用 .on..更多详细信息在链接中

【讨论】:

  • 我想你说的是这样使用:$(document).on(page:load, function{..});
  • 是的,不要使用 page:load 事件,而不是使用 click 或其他一些事件,顺便说一句 .on 无论如何都不支持 page:load 事件。链接中提到了事件。先通读一遍,然后再继续:)
  • 你完全理解我的问题。我不会做任何点击事件。我的 jquery 方法应该在我来到那个页面后立即加载。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-08-19
  • 2021-04-24
  • 2014-09-10
  • 2015-02-11
  • 2012-05-23
  • 1970-01-01
相关资源
最近更新 更多