Javascript 通过顶级元素的jQuery reguardless获取整个HTML文档
我正在尝试获取所有文档的整个html字符串 假设我有一个文件/文档:Javascript 通过顶级元素的jQuery reguardless获取整个HTML文档,javascript,jquery,html,document,Javascript,Jquery,Html,Document,我正在尝试获取所有文档的整个html字符串 假设我有一个文件/文档: <body> <h1>anything</h1> </body> 任何东西 或者类似的 <form> </form> 我希望使用jQuery获取整个文档和所有html,我需要一种方法来选择最上面的元素和其中的所有内容,不管它是、还是$('html')。prop('outerHTML')将为整个文档返回一个html字符串 如果您担心html不是顶
<body>
<h1>anything</h1>
</body>
任何东西
或者类似的
<form>
</form>
我希望使用jQuery获取整个文档和所有html,我需要一种方法来选择最上面的元素和其中的所有内容,不管它是
、
还是$('html')。prop('outerHTML')
将为整个文档返回一个html字符串
如果您担心html
不是顶层元素,请使用以下代码:$(document).children().prop('outerHTML')
这将返回文档下一级第一个元素的html:
“.children()方法与.find()的不同之处在于,它只包含.children()
沿DOM树向下移动一级“
您甚至可以在没有jQuery的情况下执行此操作。我在Chrome、Firefox、Safari和IE9中测试了document.all[0].outerHTML
,效果良好
至少在Chrome 31和Safari 6.1中,您可以使用$(document.prop('doctype')
(或者document.doctype
)获取doctype。在Firefox中似乎不起作用。如果您已经有了字符串,还需要什么?如果你没有字符串,你在问什么?@SLaks,比这个复杂一点。我没有字符串。那么你有什么?我有原始的HTML输入字符串,但是我在服务器端使用jQuery编辑它。我需要一种使用jQuery获取已编辑的dom
的方法。希望这是有道理的。我有点困惑,我想确保我理解正确。在您需要选择顶层元素时,您正在使用的东西实际上并没有呈现到DOM中?无论它是在DOM上还是仅在字符串中,都会产生不同。如果没有
标记怎么办?我添加了另一个选项,以防没有
标记文档。所有[0]。outerHTML
不是为我做的,其他的是,但是它没有抓取doctype。你知道怎么做吗?试试$(document).prop('doctype')
它在Chrome和Safari中对我有用,但在Firefox中不行。我不知道如何在一个命令中把所有的东西都集合起来。您可以将字符串连接起来。