我正在寻找一个样式表,它打印每个节点的名称(包括其值)。获取值很容易,但我不知道如何获取每个节点的名称。这是基本模板:
<?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" encoding="UTF-8" />
<xsl:template match="/">
<xsl:for-each select="/">
???
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)
有人能给我提示吗?
谢谢,罗伯特
这个完整的转变:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:variable name="vQ">"</xsl:variable>
<xsl:template match="*">
<xsl:value-of select=
"concat(name(), ' = ', $vQ, ., $vQ, '
')"/>
<xsl:apply-templates select="*"/>
</xsl:template>
</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)
当应用于任何 XML 文档时,例如:
<nums>
<num>01</num>
<num>02</num>
<num>03</num>
<num>04</num>
<num>05</num>
<num>06</num>
<num>07</num>
<num>08</num>
<num>09</num>
<num>10</num>
</nums>
Run Code Online (Sandbox Code Playgroud)
产生完全想要的正确结果:
nums = "01020304050607080910"
num = "01"
num = "02"
num = "03"
num = "04"
num = "05"
num = "06"
num = "07"
num = "08"
num = "09"
num = "10"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6738 次 |
| 最近记录: |