Reputation: 11493
I'm using docx.js, which converts docx to html5 in the browser. The function convertContent
outputs a NodeList
. The issue is I need an HTML/XML string, not a NodeList
.
Is there any way to convert a NodeList
back into HTML? There are plenty of examples of going the other way or converting it to an array, but none on how to convert it back to HTML.
Upvotes: 4
Views: 3777
Reputation: 18575
Several methods available for NodeList
, one being values()
.
let list = document.body.childNodes; //<-- returns NodeList
for (const value of list.values()) {
myTarget.querySelector("#my-target-element").append(value);
}
Upvotes: 0
Reputation: 11353
I'm a bit unclear on your question (specifically I need HTML5
)
If you want the string representation this will create a string of the html for each node in the list
var html = Array.prototype.reduce.call(nodes, function(html, node) {
return html + ( node.outerHTML || node.nodeValue );
}, "");
Update: fix textnodes showing up as undefined
Try placing this in console on this site
var htmlstr = Array.prototype.reduce.call($("div")[43].childNodes, function(html, node) {
return html + ( node.outerHTML || node.nodeValue );
}, "");
console.log(htmlstr);
Upvotes: 5