gpt4 book ai didi

javascript - 无法使用纯 JavaScript 读取 null 错误的属性 'parentNode'

转载 作者:太空宇宙 更新时间:2023-11-04 15:56:42 24 4
gpt4 key购买 nike

我正在通过 javascript 创建新元素并将其附加到已有的 div 中:

function addElement(){
var dodato = document.getElementById('dodato');
var input = document.getElementById('input');
if(input.value!==""){
var div = document.createElement('div');
dodato.appendChild(div);
var ele = dodato.lastChild;
ele.style.width = "200px";
ele.style.float = "left";
ele.innerHTML = input.value;
ele.id = input.value;
var deletE = document.createElement('span');
ele.appendChild(deletE);
var deletEe = ele.lastChild;
deletEe.innerHTML = 'X';
deletEe.style.color = "red";
deletEe.style.float = 'right';
deletEe.setAttribute('onclick','deleteE('+input.value+')');
}
}

dodato 是 div,我在其中添加所有新元素,并且所有这些元素都有不同的 id

通过单击 span,我调用新函数来删除一些具有特定 id 的添加元素。

function deleteE(delete_value){
var dodato = document.getElementById('dodato');
var el = document.getElementById(delete_value);
dodato.removeChild(el);
}

我不断收到的错误是:

无法在“Node”上执行“removeChild”:参数 1 不是“Node”类型。

dodato.removeChild(el);

最佳答案

在你的第一个代码片段中,你说

deletEe.setAttribute('onclick','deleteE('+input.value+')');

然后在deleteE中你说:

var el = document.getElementById(delete_value);

因此,您尝试获取 elementById 及其,而不是其id。改变

deletEe.setAttribute('onclick','deleteE('+input.value+')');

deletEe.setAttribute('onclick','deleteE('+input.id+')');

关于javascript - 无法使用纯 JavaScript 读取 null 错误的属性 'parentNode',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42635648/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com