我的代码可以在IE中运行,但在Safari、Firefox和Opera中会崩溃。(惊喜)

document.getElementById("DropList").options.length=0;

经过搜索,我了解到它不喜欢的是长度=0。 我试过了……选项=null和var clear=0...长度=clear,结果相同。

我一次对多个对象这样做,所以我正在寻找一些轻量级的JS代码。


当前回答

function removeOptions(obj) {
    while (obj.options.length) {
        obj.remove(0);
    }
}

其他回答

也许,这不是最干净的解决方案,但绝对比一个一个地移除简单:

document.getElementById("DropList").innerHTML = "";
while(document.getElementById("DropList").childNodes.length>0) 
{
    document.getElementById("DropList").removeChild(document.getElementById("DropList").childNodes[0]);
}
function removeOptions(obj) {
    while (obj.options.length) {
        obj.remove(0);
    }
}

我认为这是最好的sol. is $("#myselectid").html(");

如果你正在使用JQuery,并且你的选择控件的ID为“DropList”,你可以这样删除它的选项:

$('#DropList option').remove();

实际上,它适用于任何选项列表,如数据列表。

希望能有所帮助。