将 NodeList 转换回 HTML

问题描述 投票:0回答:2

我正在使用 docx.js,它可以在浏览器中将 docx 转换为 html5。函数

convertContent
输出
NodeList
。问题是我需要一个 HTML/XML 字符串,而不是
NodeList

有什么方法可以将

NodeList
转换回 HTML 吗?有很多其他方式或将其转换为数组的示例,但没有关于如何将其转换回 HTML 的示例。

javascript html docx
2个回答
5
投票

我对你的问题有点不清楚(特别是

I need HTML5

如果您想要字符串表示形式,这将为列表中的每个节点创建一个 html 字符串

var html = Array.prototype.reduce.call(nodes, function(html, node) {
    return html + ( node.outerHTML || node.nodeValue );
}, "");

更新:修复显示为未定义的文本节点

尝试将其放入此网站的控制台中

var htmlstr = Array.prototype.reduce.call($("div")[43].childNodes, function(html, node) {
    return html + ( node.outerHTML || node.nodeValue );
}, "");

console.log(htmlstr);

0
投票

有多种方法可用于

NodeList
,其中之一是
values()

let list = document.body.childNodes; //<-- returns NodeList
for (const value of list.values()) {
  myDocument.querySelector("#my-target-element").append(value);
}
© www.soinside.com 2019 - 2024. All rights reserved.