JackShcherbakov
@JackShcherbakov

Как со строкой, содержащей HTML код, работать как с HTML?

Здравствуйте! Я достаю из localStorage HTML. он выглядит вот так:
<h1 id="projectName">2</h1>
		<table id="output"><colgroup><col><col></colgroup><tr><td>2</td><td>2</td></tr><tr><td>2</td><td>2</td></tr></table>

При нажатии на определённую кнопку я делаю вот это:
if(e.target.className == "loadButton"){
			let localStorageHTML =  localStorage.getItem(e.target.previousElementSibling.children[0].textContent);
	document.getElementById("output").innerHTML = localStorage.children[1].innerHTML; //У строки нету childdren!
			document.getElementById("projectName").textContent = localStorage.children[0].textContent;
		}

Как мне быть? Мне надо обойтись без добавления этого кода в какой-то временный объект, из которого я буду потом брать children. Или без этого не обойтись?
  • Вопрос задан
  • 92 просмотра
Пригласить эксперта
Ответы на вопрос 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
Без временного объекта в том или ином виде не обойтись, но можно использовать DOMParser.
(new DOMParser())
    .parseFromString(localStorageHTML, 'text/html')
    .body.childNodes
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы