2013-10-28 149 views
3

我有一个我无法控制的HTML表单,我想用页面上的另一个布局显示内容(标签和输入文本/选项)给客户端(实际上,要做一个“审查你的答案”页)。将HTML转换为HTML:使用XSLT?

因此,我非常需要将复杂的HTML表单转换为另一个HTML文档(或DOM节点树)。

在我看来,XSL转换的通常用例非常接近,但输入不是XML。

我只是想知道XLST是否是事实上的方式去做,或者如果我可以使用另一种技术(也许更适合非XML输入)?

+0

你可能想看看以前的帖子: http://stackoverflow.com/questions/138555/how-to-convert -html-to-xhtml – resigned

回答

3

不,你不能这样做,因为HTML不是XML(除非它是doctype xhtml)。

让我用一个简单的例子来说明:

<html> 
    <body> 
     <p>Para1 
     <br> 
     <p>Para2</p> 
    </body> 
</html> 

这是一个有效的HTML片段,但不是简洁(wellformed)XML。 而且您无法使用XSL转换无效的XML。

如果您可以在通过XSLT转换它之前设法转换(invallid)HTML tp有效xhtm,它可能会起作用。您可以通过使用jtidy试试这个,但我有jtidy没有经验,

+0

似乎是一个好方法:HTML tidy + XSLT – lajarre