如何在jquery中删除选项值

时间:2014-02-06 12:23:44

标签: javascript jquery

如何删除Listbox中的选项值?我曾在Javascript尝试了以下内容,但如何使用jQuery

执行此操作
<script>
    var coun = document.getElementById("zone").options;
    for (var i = 0; i < coun.length; i++)
    {
        if (coun[i].innerHTML == "Null Value" || coun[i].innerHTML == "")
        {
            document.getElementById("zone").options[i] = null;
        }

    }
</script>
<select id="zone">
    <option value="Null Value">Null value</option>
    <option value="1">MM</option>
    <option value="2">NN</option>
    <option value="3">OO</option>
</select>

4 个答案:

答案 0 :(得分:2)

使用jQuery

jQuery(function(){
    $('#zone').find('option[value="Null Value"]').remove()
})

演示:Fiddle

在将select元素添加到dom之前,您的脚本似乎正在运行,因此document.getElementById("zone")将是未定义的,导致脚本失败并显示错误。

为了更加安全,可以在dom ready处理程序中添加脚本

答案 1 :(得分:0)

使用

$('#zone > option[value="Null Value"]').remove()

答案 2 :(得分:0)

使用jquery

$(function(){
  $('#zone').find('option[value="Null Value"]').remove();
})

答案 3 :(得分:0)

尝试此解决方案。

$('#zone').find('option').each(function(){

        var optValue = $(this).attr('value');
        if(optValue === 'Null Value' || optValue === ''){
            $(this).removeAttr('value');
        }           
    });

以上代码将过滤所有选项并根据给定条件工作。