以正确的格式获取html源代码

时间:2012-06-15 10:01:47

标签: javascript jquery html browser tags

当我尝试使用$("html").html()获取html代码时,我通过javascript动态生成了网页。我得到了一切,这很好。唯一的问题是空标记,例如<link />, <input />, <img />, <br /> 没有按我的意愿显示。

我希望它们以正确的封闭格式显示,如下所示 -

<input type="text" name="nm" />

但它们显示为

<input type="text" name="nm">

即。没有关闭

我想在这个字符串的java中创建一个html对象,但是我得到了一个像无效的html一样的异常。

任何解决方案?

1 个答案:

答案 0 :(得分:1)

  

我希望它们以正确的封闭格式显示,如下所示

这只是XHTML中的“正确”。它只是在HTML中被容忍了。如果您在正确提供的(真正的XHTML文档)中执行此操作,则浏览器应该返回有效的XML。 (它可能没有,但它应该。)如果您正在使用XHTML标记汤(以text/html提供XHTML)或使用任何形式的HTML(HTML4严格,HTML4过渡,HTML5,根本没有文档类型) ,浏览器应该返回HTML(没有无关的固件)。更多:http://www.w3.org/TR/html5/embedded-content-0.html#dom-innerhtml

无论如何,这取决于浏览器,而不是jQuery。据我所知,你不能要求一个特定的变体(除了指定你的doctype和服务正确的内容类型,这可能仍然不足以使用今天的浏览器)。