我的代码可以在IE中运行,但在Safari、Firefox和Opera中会崩溃。(惊喜)
document.getElementById("DropList").options.length=0;
经过搜索,我了解到它不喜欢的是长度=0。 我试过了……选项=null和var clear=0...长度=clear,结果相同。
我一次对多个对象这样做,所以我正在寻找一些轻量级的JS代码。
我的代码可以在IE中运行,但在Safari、Firefox和Opera中会崩溃。(惊喜)
document.getElementById("DropList").options.length=0;
经过搜索,我了解到它不喜欢的是长度=0。 我试过了……选项=null和var clear=0...长度=clear,结果相同。
我一次对多个对象这样做,所以我正在寻找一些轻量级的JS代码。
当前回答
这是一条很短的路:
document.getElementById('mySelect').innerText = null;
一行,没有for,没有JQuery,很简单。
其他回答
while(document.getElementById("DropList").childNodes.length>0)
{
document.getElementById("DropList").removeChild(document.getElementById("DropList").childNodes[0]);
}
对于Vanilla JavaScript,有一种简单而优雅的方法来做到这一点:
for(var o of document.querySelectorAll('#DropList > option')) {
o.remove()
}
去扭转。原因是每次移除后尺寸都会减小。
for (i = (len-1); i > -1; i--) {
document.getElementById("elementId").remove(i);
}
我认为这是最好的sol. is $("#myselectid").html(");
Try
document.getElementsByTagName("Option").length=0
或者可以查看removeChild()函数。
或者如果你使用jQuery框架。
$("DropList Option").each(function(){$(this).remove();});