Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将HTMLDocument转换为可打印字符串_Javascript_Dom - Fatal编程技术网

Javascript 将HTMLDocument转换为可打印字符串

Javascript 将HTMLDocument转换为可打印字符串,javascript,dom,Javascript,Dom,我想将Javascript DOM HTMLDocument转换为可以写入文件的字符串。但是如何将HTMLDocument的字符串转换为xml 更新如果可能,我希望看到在应用任何动态javascript呈现后生成的html。'+document.documentElement.innerHTML+'' '<html>'+document.documentElement.innerHTML+'</html>' 将HTMLDocument对象转换为XML的DOM方式是: n

我想将Javascript DOM HTMLDocument转换为可以写入文件的字符串。但是如何将HTMLDocument的字符串转换为xml

更新如果可能,我希望看到在应用任何动态javascript呈现后生成的html。

'+document.documentElement.innerHTML+''
'<html>'+document.documentElement.innerHTML+'</html>'

将HTMLDocument对象转换为XML的DOM方式是:

new XMLSerializer().serializeToString(oDocument);

在InternetExplorer中,无法通过任何内置方式获得HTML文档对象的正确XML表示。在这里,您需要自己实现序列化机制—遍历DOM树并创建XML字符串。

您可以创建一个新的div节点,将HTMLDocument作为子节点附加,然后读取父div的innerHTML,如下所示

var div = document.createElement("div");
div.appendChild(oDocument);

console.log(div.innerHTML);

它会显示呈现的HTML吗?i、 e.一旦浏览器加载了文档并应用了任何动态Javascript?Joel,就可以进行简单的测试。据我所知,它应该显示呈现的HTML,因为SerializeToString函数的参数是live DOM节点(文档),我希望有一个更全面的解决方案,能够写出加载文档并应用任何动态javascript渲染后生成的html。下面谢尔盖的解决方案看起来很有希望。