Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rails4-JavaScript停止工作,获取:undefined不是一个函数_Javascript_Ruby On Rails_Ruby_Coffeescript_Jquery Chosen - Fatal编程技术网

Rails4-JavaScript停止工作,获取:undefined不是一个函数

Rails4-JavaScript停止工作,获取:undefined不是一个函数,javascript,ruby-on-rails,ruby,coffeescript,jquery-chosen,Javascript,Ruby On Rails,Ruby,Coffeescript,Jquery Chosen,我有一个Rails应用程序,在其中我使用gem选择的Rails(或选择的sass引导Rails):在我的gemfile中,我有以下内容: gem 'chosen-sass-bootstrap-rails' 它以前是有效的,但现在我不断地出现这个错误——我不知道为什么: [Error] TypeError: undefined is not a function (evaluating '$('.chosen- select').chosen({ allow_single_deselect

我有一个Rails应用程序,在其中我使用gem
选择的Rails
(或选择的sass引导Rails):在我的
gemfile
中,我有以下内容:

gem 'chosen-sass-bootstrap-rails'
它以前是有效的,但现在我不断地出现这个错误——我不知道为什么:

[Error] TypeError: undefined is not a function (evaluating '$('.chosen-  select').chosen({
  allow_single_deselect: true,
  no_results_text: 'No results matched',
  width: '100%'
})')
我的
application.js
如下所示:

//= require jquery
//= require jquery_ujs
//= require bootstrap

//= require jquery.turbolinks
//= require chosen-jquery
//= require scaffold
//= require jquery.purr
//= require best_in_place
//= require bootstrap-datepicker
//= require jquery-fileupload
//= require autocomplete-rails
//= require jquery-ui
//= require jquery.countdown
//= require autocomplete-rails
//= require bootstrapValidator.min

//= require turbolinks

//= require_tree .
= select_tag "tag", options_from_collection_for_select(@team_tags, 'name', 'name', params[:tag]), prompt: "All tags", class: 'form-control chosen-select select-ideas-tag', onchange: "window.location.replace('/teams/#{@team.id}/tags/' + this.value + '?search=#{params[:search]}');"
# enable chosen js
$('.chosen-select').chosen
  allow_single_deselect: true
  no_results_text: 'No results matched'
  width: '100%'
application.css.scss
中,我有一行:

*= require chosen_bootstrap
我的HTML(或HAML)如下所示:

//= require jquery
//= require jquery_ujs
//= require bootstrap

//= require jquery.turbolinks
//= require chosen-jquery
//= require scaffold
//= require jquery.purr
//= require best_in_place
//= require bootstrap-datepicker
//= require jquery-fileupload
//= require autocomplete-rails
//= require jquery-ui
//= require jquery.countdown
//= require autocomplete-rails
//= require bootstrapValidator.min

//= require turbolinks

//= require_tree .
= select_tag "tag", options_from_collection_for_select(@team_tags, 'name', 'name', params[:tag]), prompt: "All tags", class: 'form-control chosen-select select-ideas-tag', onchange: "window.location.replace('/teams/#{@team.id}/tags/' + this.value + '?search=#{params[:search]}');"
# enable chosen js
$('.chosen-select').chosen
  allow_single_deselect: true
  no_results_text: 'No results matched'
  width: '100%'
我的JS(或CoffeeScript)如下所示:

//= require jquery
//= require jquery_ujs
//= require bootstrap

//= require jquery.turbolinks
//= require chosen-jquery
//= require scaffold
//= require jquery.purr
//= require best_in_place
//= require bootstrap-datepicker
//= require jquery-fileupload
//= require autocomplete-rails
//= require jquery-ui
//= require jquery.countdown
//= require autocomplete-rails
//= require bootstrapValidator.min

//= require turbolinks

//= require_tree .
= select_tag "tag", options_from_collection_for_select(@team_tags, 'name', 'name', params[:tag]), prompt: "All tags", class: 'form-control chosen-select select-ideas-tag', onchange: "window.location.replace('/teams/#{@team.id}/tags/' + this.value + '?search=#{params[:search]}');"
# enable chosen js
$('.chosen-select').chosen
  allow_single_deselect: true
  no_results_text: 'No results matched'
  width: '100%'
知道它为什么不起作用吗

更新

似乎不仅仅是
选择的rails
停止了工作,而且JS似乎完全停止了工作。我的库没有一个像预期的那样工作。我尝试过重建和清理我的资产,但没有任何帮助

不确定是什么原因造成的,也不知道如何找到主要问题


有什么想法吗?

可能的原因:

在应用程序中同时包含jquery和Selected两次。双重包含任何一个都可能导致此错误

你也可以试试这个

//=需要jquery

/=需要jquery.turbolinks

//=需要jquery\u ujs

//=需要所选jquery

//=需要脚手架

//=需要jquery.purr

//=需要jquery用户界面

//=需要引导

//=需要jquery.countdown

/=需要TurboLink

//=需要一棵树


为什么同时需要jquery.turbolinks和turbolinks。您可以禁用turbolinks并进行检查吗?

可能的原因:

在应用程序中同时包含jquery和Selected两次。双重包含任何一个都可能导致此错误

你也可以试试这个

//=需要jquery

/=需要jquery.turbolinks

//=需要jquery\u ujs

//=需要所选jquery

//=需要脚手架

//=需要jquery.purr

//=需要jquery用户界面

//=需要引导

//=需要jquery.countdown

/=需要TurboLink

//=需要一棵树


为什么同时需要jquery.turbolinks和turbolinks。您可以禁用turbolinks并进行检查吗?

您关于所有JS停止工作的建议表明您的初始化代码导致了错误:它停止了对JS代码的所有进一步计算。错误显示了“selected-select”之间的一些间隔(更多一点表示问题)。破折号和“选择”之间是否有不可打印的字符

我追踪问题的顺序是:

  • 首先通过在代码前后弹出一个警报来检查JS是否正常工作。但看起来你的代码已经到达了
  • 您的初始化代码可能位于错误的位置:TurboLink对初始化代码的位置有一些要求,但在运行生产版本之前,这可能不是问题
  • 错误并不是很具体地说明问题的哪一部分。甚至可能是对字符串中的“select”进行了计算。通过首先在参数散列中指定一些绝对错误但可识别的内容,拆分此命令以确保没有过快跳转到正确的属性。然后检查#('select-select')甚至有一个可用的结果(您的视图可能会被破坏)
  • 请记住,如果此脚本崩溃,并且是第一个初始化代码,则大多数JS可能不再被调用


    我希望此信息为您指明了正确的方向……

    您关于所有JS停止工作的建议表明您的初始化代码导致了错误:它停止了对JS代码的所有进一步计算。错误显示了“selected-select”之间的一些间隔(更多一点表示问题)。破折号和“选择”之间是否有不可打印的字符

    我追踪问题的顺序是:

  • 首先通过在代码前后弹出一个警报来检查JS是否正常工作。但看起来你的代码已经到达了
  • 您的初始化代码可能位于错误的位置:TurboLink对初始化代码的位置有一些要求,但在运行生产版本之前,这可能不是问题
  • 错误并不是很具体地说明问题的哪一部分。甚至可能是对字符串中的“select”进行了计算。通过首先在参数散列中指定一些绝对错误但可识别的内容,拆分此命令以确保没有过快跳转到正确的属性。然后检查#('select-select')甚至有一个可用的结果(您的视图可能会被破坏)
  • 请记住,如果此脚本崩溃,并且是第一个初始化代码,则大多数JS可能不再被调用


    我希望这些信息为您指明了正确的方向。

    结果我想包括
    jQuery
    两次。一次是在
    application.html
    中,另一次是在
    application.js
    中。删除
    application.html
    中的一次使它起作用。

    结果我想包括
    jQuery
    两次。一次是在中de>application.html和
    application.js
    中的。删除
    application.html
    中的一个使其工作。

    尝试删除其中一个,但没有任何区别。非常确定这是rails默认设置,不记得添加了其中任何一个。尝试删除其中一个,但没有任何区别。非常确定这是一个错误rails默认,不记得添加了它们。感谢您的指导。对于#1,我将尝试这样做,问题是,正如我所提到的,似乎有很多JS工作不正常。#3我同意,但如果我完全删除
    选择的引导
    ,我会为另一个库
    引导日期选择得到另一个错误er
    (也突然停止工作)。因此,在我的情况下,我不确定问题的根源是什么。当您添加gems时,只有第三方代码会发生更改