Rails 选择 Gem 安装

Rails selectize Gem installation

正在尝试添加 selectize

来源:http://brianreavis.github.io/selectize.js/

Gem 来源:https://github.com/manuelvanrijn/selectize-rails

已添加到 Gem文件:

gem "selectize-rails"

已添加application.js

//= require selectize

添加到 application.css

 *= require selectize
 *= require selectize.default

我的表格:

  <%= f.select :user, User.not_god.map{|u| [u.to_s, u.id]}, { id: 'user-select' } %>

我的 JS:

    $('#user-select').selectize({ <-- Uncaught 
                                  TypeError: 
                                  undefined is not a function
      create: true,
      sortField: 'text'
    });

这是给我 Uncaught TypeError: undefined is not a function

有人用 selectize 遇到过这个问题吗?

非常感谢!

您在 options 散列中分配 HTML id 属性;你想在 html_options 散列中分配它。尝试为 options:

传递空散列
<%= f.select(
  :user, 
  User.not_god.map{|u| [u.to_s, u.id]}, 
  {}, 
  { id: 'user-select' } 
 ) %>

查看文档以了解正式参数的顺序。

http://api.rubyonrails.org/classes/ActionView/Helpers/FormOptionsHelper.html#method-i-select

编辑:

此外,请检查您的 jQueryselectize 和自定义脚本是否以正确的顺序加载。

app/assets/javascripts/application.js

//= require jquery
//= require jquery_ujs
//= require selectize

$(function() {
  $('#user-select').selectize({
    create: true,
    sortField: 'text'
  });
});