2010-11-24 25 views
5

オートコンプリートは入力された最初の文字ではなく、2番目に入力されたときには発生しません。バックスペースを使用した後では、のminLength = 1で動作します。 また、selectFirst:trueは、ページの読み込み中の配列の最初の項目には決して設定されません。jQuery autocomplete minLength

$().ready(function(){ 
     $('#CompanyName').autocomplete({ 
       source: companyNames, 
       select: SetLocations, 
       selectFirst :true, 
       minLength: 0 //corrected as suggested, but still no change 
     }); 
}); 

誰もがこの行動に直面したことはありますか。私はグローバル設定/デフォルトがないので私は無知です。

答えて

11

あなたは、いくつかの構文エラーを持って、document.readyハンドラはブレースが欠落している(と、とにかく推奨されません)とあなたのオプションにカンマ、それは次のようになります。

$(function() { 
    $('#CompanyName').autocomplete({ 
      source: companyNames, 
      select: SetLocations, 
      selectFirst: true, //here 
      minLength: 0 
    }); 
}); 

をまた、オートコンプリートは後を活性化させますminLength文字、あなたはすぐにそれをしたい場合は、0を使用し、from the docs

はminLength :オートコンプリートがアクティブになるまでにユーザーが入力する必要がある最小文字数。ゼロは、ほんの数アイテムのローカルデータに役立ちます。 1文字が数千のアイテムと一致するアイテムが多数ある場合は、増やす必要があります。

.....

+0

@Nick:ああ、私のタイプミスのthats。ごめんなさい。しかし、私のコードとのクロスチェック。すべてのカンマは定位置にある。 –

+1

@conqenator - あなたの*実際の*コードを投稿してください。あなたが質問のコードを作るとき、答えがほとんど不可能になります...少なくとも2つのコピーエラーがあります。これはありません... –

+0

@ニック:もう一度、お詫び申し上げます。 .ready()は推奨されていません。それはここで何の役割を果たしていますか? –