我正在使用XSL转换将xml转换为xhtml,问题是输入标签最后没有打印斜杠,尽管我写了这个
<xsl:output method="html"/>
输出必须像这样
<input type='text' name='t1'/>
而是像这样显示它
<input type='text' name='t1'>
我知道这是HTML5中的新功能但是IE 6,7,8。
我尝试了下一个,但没有他们工作
<input type="text">
<xsl:attribute name="size">
<xsl:value-of select="size"/>
</xsl:attribute>
<xsl:attribute name="content">
<xsl:value-of select="content"/>
</xsl:attribute>
<xsl:attribute name="id">
<xsl:value-of select="@id"/>
</xsl:attribute>
<!--<xsl:variable name="slash" select="/"/>
<xsl:value-of select="$slash"/>-->
<!--<script type="text/javascript" src="somewhere.js">/</script>-->
<!--<script type="..." src="...">/</script>-->
</input>
答案 0 :(得分:1)
我认为这可以通过使用xhtml输出来解决问题:
<xsl:output method="xhtml"/>
这是XSLT 2.0的新功能,它将生成一个有效XML的输出,但尊重使旧版浏览器接受XML的约定。
这在XSLT 1.0中不存在。一些XSLT 1.0处理器可能会提供它,但我不知道哪些。否则,使用XSLT 1.0,您应该改为输出XML。
答案 1 :(得分:-2)
这将输出自动关闭标签:
<xsl:output method="xml"/>