(注意:我试图在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;显然,节点必须是一个直接的孩子。但我仍然无法弄清楚如何获取此节点并将其从此列表中删除。
答案 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--;
}
}