我知道之前已经提出这些问题,但我找不到可以帮助我的直接答案。
我正在尝试将以前创建的字符串转换为文本节点,因此我可以使用removeChild()将其从DOM中删除。
我有这个HTML代码:
我想选择字符串“确认”并将其删除。我已经用firstChild.nodeValue选择了它;但是当我尝试用removeChild()删除它时,它表示它不是一个节点。
那么如何将“确认”转换为文本节点?我不能使用JQuery或任何其他库。
这是该事件处理程序的完整代码:
ul.addEventListener('change', (e) => {
const checkbox = event.target;
const checked = checkbox.checked;
const listItem = checkbox.parentNode.parentNode;
const confirmed = document.createTextNode('Confirmed');
const confirm = checkbox.parentNode.firstChild.nodeValue;
const label = checkbox.parentNode;
if (checked) {
listItem.className = 'responded';
label.insertBefore(confirmed, checkbox);
label.removeChild(confirm); //Here is the error
} else {
listItem.className = '';
}
});
感谢您的帮助!