【问题标题】:Rails 4--Chosen menu style not renderingRails 4 - 选择的菜单样式不呈现
【发布时间】:2013-12-13 22:30:23
【问题描述】:

我正在使用 Rails 4,试图让 Chosen 工作,但它不渲染,而是显示标准的多选菜单。我在这里完成了 railscast 中的所有内容:http://railscasts.com/episodes/258-token-fields-revised?autoplay=true

但是选择不起作用。有什么建议或改变吗?文件如下:

宝石文件:

gem 'chosen-rails', '1.0.1'
gem 'compass-rails', github: 'Compass/compass-rails'

_field.html.erb:

<%= f.label :category_ids, "Restaurant Categories" %>
<%= f.collection_select :category_ids, Category.all, :id, :name, {}, {multiple: true} %>

application.js:

//= require jquery
//= require chosen-jquery
//= require jquery_ujs
//= require bootstrap
//= require turbolinks
//= require_tree .

application.css:

 *
 *= require_self
 *= require chosen
 *= require_tree .
 */

users.js.coffee:

jQuery ->
  $('#category_ids').chosen() 

【问题讨论】:

  • 查看源代码时 jQuery 是否正确加载?您是否在控制台中收到错误消息?
  • 贾斯汀,查看源代码我不相信 jQuery 正在加载正在加载,因为菜单仍然可以正常工作,但不是 Chosen 想要的。在视频中,他在编辑 jQuery 时指出,“确保 DOM 已加载”,这是什么意思?

标签: ruby-on-rails jquery-chosen


【解决方案1】:

我会尝试的一件事是在您的application.js 中的chosen-rails 之前加载jquery-ujs

所以你的application.js 看起来像

//= require jquery
//= require jquery_ujs
//= require chosen-jquery
//= require bootstrap
//= require turbolinks
//= require_tree .

希望这有助于解决您的问题

【讨论】:

  • 我刚刚做了并重置了服务器,没有工作。 Rails 4 有什么东西会阻止这个 gem 工作吗?有什么事吗?
【解决方案2】:

我刚刚遇到了同样的问题。这样解决了:

  1. 通过以下方式添加了 jquery-turbolinks gem:

    gem 'jquery-turbolinks'

  2. jquery-turbolinks gem 中所述更新了 application.js:

  //= require jquery
  //= require jquery.turbolinks
  //= require jquery_ujs
  //
  // ... your other scripts here ...
  //
  //= require turbolinks

我希望你觉得这很有用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-25
    • 1970-01-01
    • 2013-11-15
    • 2019-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多