Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.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 通过顶级元素的jQuery reguardless获取整个HTML文档_Javascript_Jquery_Html_Document - Fatal编程技术网

Javascript 通过顶级元素的jQuery reguardless获取整个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不是顶

我正在尝试获取所有文档的整个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中不行。我不知道如何在一个命令中把所有的东西都集合起来。您可以将字符串连接起来。