用.remove()清空选项后,是否可以删除/删除整个“select”元素?

时间:2013-12-18 23:43:50

标签: javascript

就像,在你用它清空之后:

var select = document.GetElementById("selector");

var length = select.options.length;             
for (i = 0; i < length; i++) {
    select.remove(select.options[i]);       
}

是否可以使用以下方法删除整个节点:

select.parentNode.ChildNodes[1].remove();

之后,请记住我在其他地方有remove()函数,如下所示:

Element.prototype.remove = function() {
    this.parentElement.removeChild(this);
}
NodeList.prototype.remove = HTMLCollection.prototype.remove = function() {
    for(var i = 0, len = this.length; i < len; i++) {
        if(this[i] && this[i].parentElement) {
            this[i].parentElement.removeChild(this[i]);
        }
    }
}

这对我来说似乎不起作用。我可以清空选择,但不能将其删除。

1 个答案:

答案 0 :(得分:0)

试试这个:

var select = document.getElementsByTagName('select')[0];

if (select.parentNode.removeNode)
    select.parentNode.removeNode(select);
else
    select.parentNode.removeChild(select);

Demo