如:<select id="ddl_test">
    <option>语文</option>
    <option>语文</option>
    <option>数学</option>
    <option>数学</option>
    <option>数学</option>
    <option>数学</option>
    <option>英语</option>
</select>结果:<select id="ddl_test">
    <option>语文</option>
    <option>数学</option>
    <option>英语</option>
</select>

解决方案 »

  1.   


        $("#ddl_test option").each(function () {
            var text = $(this).text();
            if ($("#ddl_test option:contains('" + text + "')").length > 1)
                $("#ddl_test option:contains('" + text + "'):gt(0)").remove();
        })求优化,求更好的写法大神何在?
      

  2.   

    javascript写的可以用吗?
    <script type="text/javascript">
    window.onload = function() {
    var opts = document.getElementById('ddl_test').options;
    var obj = new Object(), index = 0;
    while (index < opts.length) {
    if (opts[index].text in obj) opts[index] = null;
    else {
    obj[opts[index].text] = opts[index].text;
    index++;
    }
    }
    obj = null;
    }
    </script>
      

  3.   

    var optionText = null;
    $("#ddl_test option").each(function () { 
           var text = $(this).text()     
           if( text == optionText ) 
                  $(this).remove();
           else 
                  optionText  = text;
       });
      

  4.   

    为何要让垃圾数据进来呢?
    你可以在给select绑定数据之前,就去重复项嘛!