如何在javascript中删除除第二个以外的所有选项

时间:2010-05-17 16:32:08

标签: javascript

我有一个选择标签,有一些选项

<select id="sel">
     <option>text1</option>
     <option>text2</option>
     <option>text3</option>
     <option>text4</option>
</select>

我想删除除第二个以外的所有选项,即我想要

<select id="sel">
     <option>text2</option>
</select>

我认为它必须看起来像这样

document.getElementById('sel').options.length= 0;

但它会删除所有列表,所以你能帮我吗?


感谢

2 个答案:

答案 0 :(得分:2)

var
    sel = document.getElementById("sel"),
    options = sel.getElementsByTagName("option");
for (var i=options.length-1; i>=2; i--) {
    sel.removeChild(options[i]);
}
sel.removeChild(options[0]);

答案 1 :(得分:1)

你应该可以根据需要修改它。

function removeChildrenFromNode(node)
{
    if(node === undefined || node ==== null)
    {
        return;
    }

    var len = node.childNodes.length;

    while (node.hasChildNodes())
    {
        node.removeChild(node.firstChild);
    }
}