一尘不染

将HTML字符串转换为DOM元素?

html

有没有办法像这样转换HTML:

<div>
<a href="#"></a>
<span></span>
</div>

或任何其他HTML字符串插入DOM元素?(以便我可以使用appendChild())。我知道我可以执行.innerHTML和.innerText,但这不是我想要的-我确实希望能够将动态HTML字符串转换为DOM元素,以便可以在.appendChild()中传递它。

更新:似乎有些混乱。我将HTML内容放在字符串中,作为JavaScript中变量的值。该文档中没有HTML内容。


阅读 808

收藏
2020-05-10

共1个答案

一尘不染

您可以使用DOMParser,如下所示:

var xmlString = "<div id='foo'><a href='#'>Link</a><span></span></div>";

var doc = new DOMParser().parseFromString(xmlString, "text/xml");

console.log(doc.firstChild.innerHTML); // => <a href="#">Link...

console.log(doc.firstChild.firstChild.innerHTML); // => Link
2020-05-10