我有一個特定於listitems節點的模板元素。不確定爲什麼當特定模板存在時打印所有文本
XSL
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output method="text"/>
<xsl:template match="listitems">
<xsl:value-of select="@status" />
</xsl:template>
</xsl:stylesheet>
XML
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="callvsapply.xslt"?>
<!-- sample XML snippet -->
<xml>
<foo status="No">You are here.</foo>
<bar status="Yes">Hello Bar!</bar>
<baz status="No">Hello Baz!</baz>
<listitems status="Yes" id="13" />
<listitems status="No" id="12" />
</xml>
導致
You are here.
Hello Bar!
Hello Baz!
Yes
No
爲什麼所有的文本打印?我期望的是,是的,不,
這工作,但是,我米不知道我明白爲什麼。你能再解釋一下發生了什麼? – Rod
在xslt中未處理的所有元素在輸出中反映爲文本,因此我們使用遞歸運行的新模板,並且不生成輸出,因爲沒有在文件中找到xslt定義,並且僅爲找到該模板的那個元素運行。 – Rupesh