複数の単語に対してJQueryオートコンプリートを使用する方法

StackOverflow https://stackoverflow.com/questions/824144

  •  05-07-2019
  •  | 
  •  

質問

私はオートコンプリートフィールドを持っていますが、どうすればそれを使用できますか 複数の単語に対して?最初の単語を入力すると完璧に機能しますが、 私がスペースを入れて2番目の単語を入力すると、2つの単語が送り返されます サーバーに対して、そしてもちろん結果は間違っています!

eg。 2つの単語を入力すると、

「Java javascript」

最初の単語「Java」、オートコンプリートはうまく機能し、リストを引き出します。

ただし、iスペースを入力してjavascriptを入力すると、オートコンプリートは「Java + javascript 'をajax関数に追加します。

これを修正する方法はありますか?

役に立ちましたか?

解決

できないように見えますが、組み込みの実装はそれをサポートしていません-上記のリンクで見ることができます:「安定版リリースまたはディストリビューションの一部ではありません」。

ただし、こちらで利用可能な外部バージョンをダウンロードして使用していますa>:

http://bassistance.de/jquery-plugins/jquery-plugin-オートコンプリート/

少し大きくなりますが、使用方法はまったく同じです。何も変更する必要はありません。複数選択する場合は、オプション{multiple:true}に追加します

更新

JQueryUIが最新バージョン用に更新され、この回答は廃止されました。最新の例はこちらにあります

http://jqueryui.com/demos/autocomplete/#multiple

他のヒント

「基本」を使用している場合オートコンプリートのバージョン、組み込みです。しかし、jQuery UIバージョンを使用している場合、ここに例があります:

http://jqueryui.com/demos/autocomplete/#multiple

$("#tagnames").autocomplete("/tags/filter", {
        max: 6,
        highlightItem: true,
        multiple: true,
        multipleSeparator: " ", 
  })

複数の単語の自動補完を有効にするには、オプション multiple:true および multipleSeparator:"を設定する必要があります。 "

より完全な回答のためにコメントを追加します。共通のプレフィックスを持つ2つの可能な選択肢があるとします。

ip5 ip5バッテリー

ユーザーがテキストボックスip5に入力すると、上記の最初の選択が自動的に選択され、ユーザーは2番目の選択のために入力し続けることができません。この動作を避けるため、オプションを使用してください

triggerSelectOnValidInput:true、

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top