3

ここで提供されているjQueryUIオートコンプリートの複数の例では、同じアイテムを複数回追加できます。

これを防ぐにはどうすればよいですか?

4

1 に答える 1

5

ここでjQueryUIによって提供される例を取り上げる場合は、オートコンプリートのselect関数内に次の行を追加します。

availableTags.splice($.inArray(ui.item.value, availableTags), 1);

これにより、基本的に、使用可能なタグのリストから選択されたばかりのアイテムが削除されます。

最終的に得られるselect関数は次のようになります。

select: function( event, ui ) {
    var terms = split( this.value );
    // remove the current input
    terms.pop();
    // add the selected item
    terms.push( ui.item.value );
    // add placeholder to get the comma-and-space at the end
    terms.push( "" );
    this.value = terms.join( ", " );
    // remove added item from list of available items to select
    availableTags.splice($.inArray(ui.item.value, availableTags), 1);
    return false;
}
于 2012-07-09T11:18:10.407 に答える