jquery - Rails jquery tokeninput 返回 "not a function"

标签 jquery ruby-on-rails jquery-tokeninput

我正在尝试按照 Ryan Bates Railscast nbr 258 将 tokeninput 集成到我的小 Rails 应用程序中。

因此,

我在供应商目录中添加了 tokeninput 文件

然后我更改了我的 application.js 文件:

//
//= require jquery
//= require jquery_ujs
//= require jquery.tokeninput
//= require bootstrap
//= require chosen-jquery
//= require jquery_nested_form
//= require bootstrap-datetimepicker.min
//= require_tree .

然后我在文件categories.js.coffee中添加了这段代码

jQuery ->
  $('#company_category_list').tokenInput('/categories.json',
    theme: 'facebook'
    prePopulate: $('#company_category_list').data('load')
  )

当我转到表单时,浏览器控制台显示:

TypeError: $(...).tokenInput is not a function
[Break On This Error]   

prePopulate: $('#company_category_list').data('load')

我已经找了几个小时了,但没有找到这个错误的原因。 jquery.tokeninput 文件似乎已由 Assets 管道正确加载。

欢迎任何帮助、建议!

最佳答案

总结一下:

我遇到的问题是由于我曾经预编译了我的 Assets ,然后决定即时编译:

  • 在开发模式下调试不方便
  • Heroku 在推送代码时自动管理预编译

预编译在我的公共(public)文件夹中创建了 Assets 的缩小版本。

当我运行我的网站时,所有 javascript 文件都会加载两次:一次来自公共(public)文件夹,一次来自正常流程。

我刚刚删除了公共(public)文件夹中的内容,它解决了我的问题。

关于jquery - Rails jquery tokeninput 返回 "not a function",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17693698/

相关文章:

ruby-on-rails - Rails 枚举符号与字符串

jquery-plugins - jQuery token 输入( token 输入)在模式弹出窗口上不起作用,列表隐藏在弹出窗口下

jquery - 文本框内的 Bootstrap 弹出窗口

javascript - 在 iframe 中嵌入 instagram 网页

jquery - 使用 jQuery 调用远程服务器上的 Web 服务

ruby-on-rails - 在多台机器上使用delay_job,其中一些任务需要在本地运行

javascript - 将值恢复到 tokeninput 字段 - jquery 错误

jquery - Angular.js - 将 $scope 传递到 jQuery 函数

javascript - jQuery 的 Tipsy 插件在哪里?

ruby-on-rails - 压缩 Ruby on Rails IF-ELSE 代码