使用XSLT,如何評論單個節點而不評論其子節點?評論單個節點
我有這個網站:
<html>
<body>
<div class="blah" style="blahblah">
<span>
<p>test</p>
</span>
</div>
</body>
</html>
我想這樣的輸出:
<html>
<body>
<!-- div class="blah" style="blahblah" -->
<span>
<p>test</p>
</span>
<!-- /div -->
</body>
</html>
這是關鍵的節點被複制的孩子和評論節點的任何屬性也將被複制。
以下是我的最佳嘗試,但不起作用。 XSLT處理器大喊: 「在添加了文本,註釋,pi或子元素節點後,不能將屬性和命名空間節點添加到父元素中。」
<?xml version="1.0" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<!-- IdentityTransform -->
<xsl:template match="/ | @* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()" />
</xsl:copy>
</xsl:template>
<xsl:template match="div">
<xsl:text disable-output-escaping="yes"><!--</xsl:text>
<xsl:copy>
<xsl:text disable-output-escaping="yes">--></xsl:text>
<xsl:apply-templates select="@* | node()"/>
<xsl:text disable-output-escaping="yes"><!--</xsl:text>
</xsl:copy>
<xsl:text disable-output-escaping="yes">--></xsl:text>
</xsl:template>
</xsl:stylesheet>
我無法想象,你爲什麼會不使用'' 。 –
2013-07-12 05:28:39
接受這個答案,因爲它比樂高的短,似乎更簡單。 – DaVinci007
@torazaburo我試過了,但無法啓動它。另外,它不會造成錯誤的嵌套? – DaVinci007