我是JavaScript的新手,我在编辑器上放了一些代码来测试它。
我正在尝试通过将子节点附加到"p"属性来动态创建元素,但我没有看到显示这些子节点。您能否解释一下为什么,以及如何显示所有节点?
这是代码:
<html>
<head>
<title>t1</title>
<script type="text/javascript">
function addNode() {
var newP = document.createElement("p");
var textNode = document.createTextNode(" This is a new text node");
newP.appendChild(textNode);
document.getElementById("firstP").appendChild(newP);
}
</script> </head>
<body> <p id="firstP">firstP<p> </body>
</html>
这是输出:firstP
我期待得到:
firstP
p
This is a new text node
更新:我接受了有效的答案。还意识到我应该期望输出是:
firstP
This is a new text node
您犯了拼写错误,需要将子节点添加到p
父标签中,因此将p
标签插入div
标签更好,也调用addNode
函数,这将起作用;-(
<html>
<head>
<title>t1</title>
</head>
<body>
<div id="firstPContainer">
<p>firstP</p>
</div>
<script type="text/javascript">
function addNode() {
var newP = document.createElement("p");
var textNode = document.createTextNode(" This is a new text node");
newP.appendChild(textNode);
document.getElementById("firstPContainer").appendChild(newP);
}
addNode();
</script>
</body>
</html>