我有一堆输入框和一个按钮在最后一个输入框,以添加更多的输入框。单击“添加”按钮时,删除按钮时出现问题。
http://gist.github.com/621417
在试图移除子元素时,我得到了这个错误。
错误:未指定的异常:[异常.组件返回故障代码: 0x80004003 (NS_ERROR_INVALID_POINTER) nsIDOMHTMLDivElement.removeChild
发布于 2010-10-11 23:57:37
第一次创建addBtn元素时,只设置name属性。
您还需要设置id属性。
因此,在createCreditBalanceInputs中,将代码更改为包含这一行(addBtn.id = "addBtn";):
var addBtn = document.createElement('input');
addBtn.type = 'button';
addBtn.style.marginLeft = "20px";
addBtn.style.marginTop = "5px";
addBtn.name="addBtn";
addBtn.id = "addBtn";
addBtn.value="Add";然后,您不需要每次创建按钮。您可以继续追加它,DOM钩子将自动从它以前的位置删除它。您可以将addCreditBalance更改为如下所示:
var addButton = document.getElementById('addBtn');
/*
//Add button
var addBtn = document.createElement('input');
addBtn.type = 'button';
addBtn.style.marginLeft = "20px";
addBtn.style.marginTop = "5px";
addBtn.name="addBtn";
addBtn.value="Add";
addBtn.addEventListener ('click',addCreditBalance,false);
*/
container.appendChild(addButton);并删除前面调用removeChild调用的行。
https://stackoverflow.com/questions/3910731
复制相似问题