0

サーバー上のエンティティを検索するために jquery autocomplete を検索しています。最後の結果として「エンティティの作成」という項目を含めるか、結果が見つからない場合にのみ結果を含めることで、検索結果リストから新しいエンティティを作成できるようにしたいと考えています。ドキュメントから、「結果リストからエンティティを作成する」を選択すると、select イベントを使用して新しいエンティティを作成するように見えます。検索結果がないとき。

JQuery UI 1.10 を使用しています

4

1 に答える 1

0

まず、ソース メソッドをオーバーライドして、応答のカスタム セットを返すことができます。この場合、Create Entity は常に返されるリストに追加されます。次に、選択イベントを処理して、エンティティを要求します。

 var availableTags = ['car', 'duck', 'house'];
 $('#elementID').autocomplete({
      source: function( request, response ) {
          var responses = $.ui.autocomplete.filter(availableTags, request.term);
          responses.push('Create Entity');
          response( responses );
      },
      select: function( event, ui ) {
          var choice = ui.item.value;
          if (choice == 'Create Entity') {
              var selection = prompt('New Entity', 'default value');
              availableTags.push(selection);
              console.log(selection);
              this.value = selection;
              return false;
          }
      }
  });

jsフィドル

于 2013-07-01T14:12:12.570 に答える