0

我在组合框中使用 Jquery ui 自动完成插件,并且正在从 JSON 文件中读取值。问题出在我的 JSON 文件中。我有相同值的字段。像这样。({名称:a},{名称:a},{名称:b})

因此,当我在组合框中键入“a”时,它会给我 2 个“a”。但我只需要一个(我只需要 JSON 文件中的唯一值)。我该怎么做呢?我现在没有完整的代码,这就是为什么我不能把它。很抱歉,谢谢。

4

2 回答 2

1

编辑:在将数据发送到 jQuery 自动完成插件之前,您可以使用类似这样的方法从 json 数组中删除重复条目。

var names = {};
var param = "name"
$.each(data.people, function() {
    if (!names[this[param]])
       names[this[param]] = [];   
    names[this[param]].push(this);
});

然后我们可以做source: names

于 2012-05-09T18:15:57.653 回答
1

试试这个......只能在输入字段中添加唯一值

 select: function( event, ui ) {

      var terms = split( this.value );
      // remove the current input
      terms.pop();
      // add the selected item

      if(!($.inArray(ui.item.value,terms) > -1))
      terms.push( ui.item.value );


      // add placeholder to get the comma-and-space at the end
      terms.push( "" );
      this.value = terms.join( ", " );
      return false;
    }
于 2014-07-15T06:07:03.597 回答