Rails:Bootstrap下拉菜单不起作用

我是Rails的新手,并且一直在关注Michael Hartl的教程。 一切都进展顺利,直到我进入下拉菜单,这是没有用的,然后工作,现在不工作:(我已经阅读了几个post和修复,我怀疑我的修修补补已经到了非常简单,我已经做了一些事情来阻止它工作。我会说我最初在我的gem文件中有bootstrap-sass 2.x,然后将其更改为3.x,但又回到了2.x.因为我没有意识到由于类名更改而导致3.x会导致问题。所以,也许这个工作的时间是我安装了bootstrap-sass 3.x时,不确定。从我所知道的虽然一切都按照它需要的方式设置。我在Windows 8.1下开发,我不得不修复execjs和特定的runtimes.rb文件的问题。所以,这是我的详细信息:

的Gemfile:

source 'https://rubygems.org' ruby '1.9.3' # Bundle edge Rails instead: gem 'rails', github: 'rails/rails' gem 'rails', '4.0.2' gem 'bootstrap-sass', '2.3.2.0' gem 'sprockets', '2.11.0' gem 'bcrypt-ruby', '3.1.2' # Use sqlite3 as the database for Active Record gem 'mysql2', '0.3.15' # Use SCSS for stylesheets gem 'sass-rails', '4.0.1' # Use Uglifier as compressor for JavaScript assets gem 'uglifier', '1.3.0' # Use CoffeeScript for .js.coffee assets and views gem 'coffee-rails', '4.0.1' # See https://github.com/sstephenson/execjs#readme for more supported runtimes # gem 'therubyracer', platforms: :ruby # Use jquery as the JavaScript library gem 'jquery-rails' # Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks gem 'turbolinks' # Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder gem 'jbuilder', '1.2' 

的application.js

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

_header.html.erb(下拉列表的位置)

  

我没有看到控制台窗口中的任何错误,除了下拉其他一切工作正常。

以下是网页的源代码:

    Ruby on Rails Tutorial Sample App | Dave Williams         
--- !ruby/hash:ActionController::Parameters action: show controller: users id: '1' 

非常感谢有关此问题的一些帮助以解决这个问题。

在此先感谢,如果我能提供更多信息,请告诉我。

我将app / assets / javascripts / application.js中的指令顺序更改为:
//= require jquery //= require jquery_ujs //= require bootstrap //= require_tree .

像魅力一样工作:)

我能够确定的问题是我放在assets / javascript目录中的2个rouge js文件。 即bootstrap.js和bootstrap.min.js。 删除这些文件后,下拉列表再次正常运行。

您可以尝试通过javascript添加来调用它:

  

在你的_header文件的底部。

希望有帮助!

问题是bootstrap的javascript。 有时加载两次。

这对我有用:

application.js中:

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

application.scss:不要在scss文件中使用// = require

 @import "*"; @import "bootstrap"; @import "font-awesome"; 

然后:

 rake assets:clean rake assets:precompile 

要么

将bootstrap.js放在assets / javascripts文件夹中并输入// = require_tree。 线