Как вставить дочерний элемент в innerHTML - PullRequest
0 голосов
/ 17 апреля 2020

У меня есть буфер:

var buff="<div id='main'><p id='foo'>Hello World</p></div>"; 
var mydiv = document.createElement("div");
mydiv.innerHTML = buff; 
// Don't document.write mydiv, but do the operation below
mydiv.getElementById("foo").innerText = "Hi there!"; 

В настоящее время он не работает, что мне делать?

Ответы [ 2 ]

0 голосов
/ 17 апреля 2020

объект mydiv не имеет функции свойства getElementById. property of object mydiv

Вам необходимо создать buff переменную следующим образом:

var buff="<div id='main'><p id='foo' class='bar'>Hello World</p></div>";

, затем изменить внутренний текст foo на:

mydiv.getElementsByClassName("bar")[0].innerText = "Hi there!"

Надеюсь, это поможет!

0 голосов
/ 17 апреля 2020

Там нет getElementById на элемент, потому что все идентификаторы уникальны. Вы используете querySelector / querySelectorAll для запросов по элементам или document.getElementById для поиска документа по идентификатору

. Вы можете использовать mydiv.querySelector('#foo') или document.getElementById('foo')

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...