2012-03-17 10 views
2

jqueryを使用していて、mustMatchオプションをサポートするオートコンプリートを探しています(ユーザーが存在するアイテム名を入力する必要があります) - >これはいくつかのオートコンプリートがあるので問題ありません。
問題は、オートコンプリートが入力された値をテストする必要があることです。
たとえば、入力された値を検証するjqueryオートコンプリート

  1. ユーザーは「England」と入力します。
  2. "England"で開いたリスト。
  3. ユーザーはリスト項目をヒットしません(イングランドを選択しないでください)が、入力の外側をクリックするだけです。
  4. ユーザーがリストから選択しないため、mustMatchをサポートするほとんどのオートコンパートメントは入力をクリアします。私は "イングランド"が存在するかどうかを検証し、それに応じて行動するオートコンプリートを探しています。

このようなオートコンプリートプラグインをご存知ですか?または、どうすれば既存のプラグインを変更することができますか?

答えて

10

jQueryUI's autocompleteは、Scott González' autoSelect pluginと共にウィジェットのchangeイベントと組み合わせることができます。あなたはプラグインが含まれている場合、あなたが必要とする必要があるすべては次のとおりです。

$("#auto").autocomplete({ 
    source: ['England', 'Germany', 'Denmark', 'Sweden', 'France', 'Greece', 'Italy'], 
    change: function (event, ui) { 
     if (!ui.item) { 
      this.value = ''; 
     } 
    } 
}); 

例:http://jsfiddle.net/qb59C/

+0

私は多くのことをあなたの例を試してみました!これは完全にここで動作しますhttp://jsfiddle.net/qb59C/2/私のコンピュータで動作していない! 「England」と入力してテキスト入力の外側をクリックすると、コンピュータで入力がクリアされ、jsFiddleでデータコンテナが正しく入力されました。 jsFiddle設定でjQuery UI 1.8.16フレームワークをマークしていないことに気付きました。オートコンプリートの仕組みこれはjquery UIフレームワークの一部です。 jsFiddleにバグはありますか?私のコンピュータ(同じブラウザ)の下でコードの動作が違うのは何ですか? – Naor

+0

@Naor:**リソース管理**をクリックしてください。あなたは私があまりにもそれを動作させるために述べたプラグインを含める必要があります。 –

+0

ありがとうございます! – Naor

関連する問題