3

此处提供的 jQuery UI 自动完成多个示例允许您多次添加相同的项目。

我该如何防止这种情况发生?

4

1 回答 1

5

如果您在此处使用 jQuery UI 提供的示例,请在自动完成的 select 函数中添加以下行:

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

这基本上删除了刚刚从可用标签列表中选择的项目。

您最终得到的选择函数应如下所示:

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 回答