2011-12-08 9 views
3

jQuery UIオートコンプリート機能をRails 3.1.3アプリケーションのウィジェットに導入しようとしています。それは何もしないとChromeの開発ツールでスクリプトを検査する上で、私は、以下を参照してください。jQuery UIオートコンプリートスロー未知の型エラー:オブジェクトにメソッド「オートコンプリート」がありません

jQuery(function() { 
    return $("#location").autocomplete({ 
    locations.js:3 Uncaught TypeError: Object #<Object> has no method 'autocomplete' 
    source: ["foo", "food", "four"] 
    }); 
}); 

私はapplication.jsでjQueryのUIを含めました:

//= require jquery 
//= require jquery-ui 
//= require jquery_ujs 
//= require_tree . 

私のCoffeeScriptはあり以下:

jQuery -> 
    $('#location').autocomplete 
    source: ["foo", "food", "four"] 

私は何が欠けているのですか?

+0

jQueryとjQueryのUIはドキュメントにロードされていますか? デベロッパーツールの[ネットワーク]タブを確認します。 $( '#location')。ドキュメントの準備が整った後にautocomplete()を呼び出しますか? – anderssonola

+0

@soderslattはい。 jquery.js、次にjquery-ui.js、そしていくつかはlocations.jsの前にあります。 "jQuery - >"はドキュメントを準備します。 – hgujral

+1

Prototypeのような他のJavaScriptライブラリを含めるのですか?それはjqueryの競合の問題かもしれません。コメントのためにhttp://api.jquery.com/jQuery.noConflict/ – anderssonola

答えて

2

私はactive_adminも持っているので、 "// = require_tree"ということが分かります。 autocompleteメソッドを削除していたactive_admin/vendorパスから古いバージョンのjQueryを追加していました。 "// = require_tree"を削除しました。明示的に "// = require locations"を追加しても問題ありません。

+0

追加するだけで、同じことが本質的に起こっていましたが、私はWYMeditorを使用していたため、古いバージョンのJQueryも付属していました。 –

+0

この手順をステップごとに説明できますか?同じエラーが出ますが、私はブートストラップを使用しています。 – Faizan