2012-01-08 33 views
5

Rails 3.1を使用していて、jQueryUIライブラリに問題があります。ここに私のapplication.jsファイルです:Rails 3.1、jQuery UIがロードされない

//= require jquery 
//= require jquery-ui 
//= require jquery_ujs 
// Loads all Bootstrap javascripts 
//= require bootstrap 
//= require rails.validations 

//= require_tree . 

は、それはブラウザに「jqueryのUI」ファイルをロードしますが、それはこのエラーを示して何でも、私はそれに関連する使用しますと苦労の時間後

TypeError: Object function (a,b){return new d.fn.init(a,b,g)} has no method 'dialog' 

答えて

2

最後に//= require jquery-uiapplication.jsから削除し、新しいjQuery UIファイルを追加しました。すべて正常に動作します。私の新しいアセットファイルは次のとおりです。

//= require jquery 
//= require jquery/jquery-ui 
//= require jquery_ujs 
// Loads all Bootstrap javascripts 
//= require bootstrap 
//= require rails.validations 

//= require_tree . 

jqueryは私のjavascriptsフォルダのサブフォルダです。

3

私は同じ問題を抱えていた、application.jsはこのように見えた:開発モードで

//= require jquery 
//= require jquery_ujs 
//= require jquery-ui 

を、このようなものだった、ページに追加する場合、/assets/application.jsはUJSに同梱のjQueryのバージョンが含まれているようで、 :

<script src="jquery"></script> 
<script src="jquery_ujs"></script> 
<script src="jquery-ui"></script> 
<script src="application.js"></script> 

最後のファイルが最初の3つのファイルを上書きしていました。私は置く:

//= require_self 
//= require jquery-ui 

それはうまく動作します。

おもしろいことに、application.jsには、require行しか含まれておらず、jQueryまたはujsも含まれていません。

+1

Why/how /私が 'require_self'を最初に削除したときに、それをトップに戻して問題を解決したかどうか不明です。ありがとう! – umezo

2

アセットをあらかじめコンパイルしている可能性があります。 public/assetsのものはすべて削除してください。

関連する問題