Почему дочерние узлы этого атрибута абзаца не отображаются? - PullRequest
0 голосов
/ 24 января 2020

Я новичок в 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

1 Ответ

1 голос
/ 24 января 2020

Вы сделали ошибку опечатки, и дочерний узел необходимо добавить в родительский тег 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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...