在Jquery中删除输入下拉列表中的重复项

时间:2016-03-08 12:43:14

标签: jquery

我已经完成了从csv获取值的代码,但在csv中,如果重复的条目我得到相同所以我已经做了很多方法但没有工作你们可以给我任何建议。在代码我提到删除代码选择选项,但我已写入输入框,所以我面临问题

var table = $("<table />");
var rows = data.split(/\r\n|\n/);
for (var i = 1; i < rows.length-1; i++) {
  var row = $("<tr />");
  cells = rows[i].split(/,(?=(?:[^\"]*\"[^\"]*\")*(?![^\"]*\"))/);
  list.push(cells)
  var newvalue=cells[1].replace("\"", ""); 
  $("#checkboxes").append("<input type='checkbox' class ='chk'   name='locationthemes' onclick='pandu();' value ="+cells[0]+"> " +cells[0] + " </input><br>");                        
  table.append(row);

}



var usedNames = {};
$("input[name='locationthemes'] > option").each(function () {
  alert("came")
  if(usedNames[this.text]) {
    //alert("if")
    $(this).remove();
  } else {
    //alert("else")
    usedNames[this.text] = this.value;
  }
});
$("select[id='checkboxes2'] > option").each(function () {
  if(usedNames[this.text]) {

    $(this).remove();
  } else {
    usedNames[this.text] = this.value;
  }
});
$("select[id='checkboxes3'] > option").each(function () {
  if(usedNames[this.text]) {

    $(this).remove();
  } else {
    usedNames[this.text] = this.value;
  }
});

1 个答案:

答案 0 :(得分:0)

您可以执行以下操作来构建包含原始list

中唯一项目的新列表
var uniqueItems = [];
$.each(list, function(i, el){
    if($.inArray(el, uniqueItems ) === -1) uniqueItems.push(el);
});