Javascript - 从集合中删除特定元素?

时间:2014-07-01 18:05:52

标签: javascript html dom internet-explorer-7

注意:我试图在Internet Explorer 7中使用它,但这也必须与Chrome和Firefox以及更高版本的IE一起使用。)

我有一个HTML表单元素,我需要在提交表单之前浏览并删除一些字段。基本上,我需要删除tag =" BUTTON"因为否则会搞砸服务器端的处理。

有一种简单的方法吗?我想到这样的事情:

for (i=0;i<formObject.length;i++) {
    if (formObject[i].tagName === 'BUTTON') {
        formObject.splice(i,1);
        i--;
    }
}

但是我无法让它工作,我得到了&#34;对象不支持此属性或方法。&#34;

所以我没有splice()而是formObject.removeChild(formObject[i]),而是给了我&#34;无效的论据。&#34;

如果我只是尝试formObject.removeChild(i),我会&#34;输入不匹配。&#34;

如何删除这些元素?

更多信息:在Chrome中,使用removeChild()时,我会收到错误消息&#34;要删除的节点不是此节点的子节点。&#34;显然,节点必须是一个直接的孩子。但我仍然无法弄清楚如何获取此节点并将其从此列表中删除。

1 个答案:

答案 0 :(得分:0)

这就是我提出的:

var formObject = document.forms[formName];
for (i=0;i<formObject.length;i++) {
    if (formObject[i].tagName === 'BUTTON') {
        formObject[i].parentNode.removeChild(formObject[i]);
        i--;
    }
}
相关问题