删除HTML选择框中的重复名称

时间:2014-11-06 09:45:43

标签: jquery html

如何通过jQuery删除HTML选择框中的重复名称。 这是小提琴 - Fiddle Demo

我尝试使用 -

$('select option').each(function() {
  $(this).prevAll('option[value="' + this.value + '"]').remove();
});

但这只会在option value相同时删除重复的条目。

如果文本相同但option values不同

,如何删除重复项

3 个答案:

答案 0 :(得分:1)

您可以使用数组来查看该值是否已经归属:

label = new Object();
$('select option').each(function(){
    if(label[$(this).text()] != 1)
        label[$(this).text()] = 1;
    else $(this).remove();
 });

http://jsfiddle.net/b6fxLnv2/3/

答案 1 :(得分:0)

试试这个:

$('select option').each(function() {
    $(this).prevAll('option[value="' + this.text + '"]').remove();
});

答案 2 :(得分:0)

var $o = $('select option');
$o.filter(function(i, el) {
    return $o.filter(function() { 
              return this.textContent === el.textContent; 
           }).index() !== i;
}).remove();

http://jsfiddle.net/msL6yLzd/