清除html选择选项组

时间:2010-04-05 20:33:56

标签: javascript

我知道你可以通过以下方式清除选项:

  

dropDownList.options.length = 0;

有没有办法清除选项组?似乎唯一的方法是一次删除一个节点。

2 个答案:

答案 0 :(得分:3)

尝试获取optgroup元素,然后将其从DOM中删除:

<body>
<select id="mySelect" onchange="npup(this);">
    <optgroup label="Foo" id="foo_group">
        <option value="foo0">foo0</option>
        <option value="foo1">foo1</option>
    </optgroup>
    <optgroup label="Bar" id="bar_group">
        <option value="bar0">bar0</option>
        <option value="bar1">bar1</option>
    </optgroup>
    <option value="kill_foo">Remove foo</option>
</select>

<script type="text/javascript">

function npup(selectElem) {
    // get value and check it
    var value = selectElem.value, foo;
    if (value==='kill_foo') {
        // retrieve optgroup
        foo = document.getElementById('foo_group');
        // remove the group from its parent
        foo.parentNode.removeChild(foo);
    }
}
</script>
</body>

答案 1 :(得分:0)

怎么样:

document.getElementById("foo_group").innerHTML = '';