【发布时间】:2018-01-30 11:27:59
【问题描述】:
我已经编写了如下所示的代码。我试图将元素“h45”定位在“年龄”之上。不知何故,它不起作用,我收到以下错误:“新的子元素包含父元素。”有谁知道为什么会发生这种情况以及我该如何解决?我是 JavaScript 新手,我不明白我做错了什么。提前谢谢大家!`
var lastName=document.getElementById("lastName");
var firstName=document.getElementById("firstName");
var age= document.getElementById("alter")
age.addEventListener("blur",showage,false);
function showage()
{
if (/[^0-9]/.test(age.value)) {
var h45 = document.createElement("h4");
var txttt = document.createTextNode("Bitte geben Sie nur Nummern ein");
h45.appendChild(txttt);
age.parentNode.appendChild(h45);
h45.insertBefore(h45,age);
h45.style.color = "red";
return false;
}
else {
return true;
}
}
【问题讨论】:
-
一般语法是
parentNode.insertBefore(newNode, referenceNode)。现在试着解释一下哪个是哪个,当你写h45.insertBefore(h45,age); -
基本上,看起来您正在尝试在自己之前插入 h45...
标签: javascript parent addeventlistener blur appendchild