XSLT显示所有XML标记内容
我不熟悉使用XSLT。我希望在xsl格式的页面中以xml标记显示所有信息。我尝试过使用本地名称、名称等,但没有一个给我想要的结果 例如:XSLT显示所有XML标记内容,xml,xslt,nodes,Xml,Xslt,Nodes,我不熟悉使用XSLT。我希望在xsl格式的页面中以xml标记显示所有信息。我尝试过使用本地名称、名称等,但没有一个给我想要的结果 例如: <step bar="a" bee="localhost" Id="1" Rt="00:00:03" Name="hello">Pass</step> Pass 我希望能够打印出所有信息(bar=“a”,bee=“localhost”)以及通行证的值 如何使用xsl实现这一点 谢谢大家! <xsl:for-each sel
<step bar="a" bee="localhost" Id="1" Rt="00:00:03" Name="hello">Pass</step>
Pass
我希望能够打印出所有信息(bar=“a”
,bee=“localhost”
)以及
通行证的值
如何使用xsl实现这一点
谢谢大家!
<xsl:for-each select="attribute::*">
<xsl:value-of select="text()" />
<xsl:value-of select="local-name()" />
</xsl:for-each>
<xsl:value-of select="text()" />
<xsl:value-of select="local-name()" />
如果只想返回值,可以使用XPath//text()|@*
如果需要属性/元素名称和值,可以使用以下样式表:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
<xsl:strip-space elements="*"/>
<xsl:template match="*">
<xsl:apply-templates select="node()|@*"/>
</xsl:template>
<xsl:template match="text()">
<xsl:value-of select="concat('<',name(parent::*),'> ',.,'
')"/>
</xsl:template>
<xsl:template match="@*">
<xsl:value-of select="concat(name(),'="',.,'"
')"/>
</xsl:template>
</xsl:stylesheet>
通过您的输入,它将产生以下输出:
bar="a"
bee="localhost"
Id="1"
Rt="00:00:03"
Name="hello"
<step> Pass
bar=“a”
bee=“localhost”
Id=“1”
Rt=“00:00:03”
Name=“你好”
通过
您只需要属性值还是名称?(bar=“a”
vsa
)xsl,也就是说,如果我更改了名称空间前缀,它可能是:)我知道,但OP说它们是XSLT的新手,我只是指出了拼写错误。如果他们试图使用你的答案,可能会混淆OP。而且,元素的值没有关闭;这可能也会引起混乱。在这种情况下,这个答案获得了一张赞成票,这有点令人惊讶。:-)该死的,我没有这么做-你知道当它给你的代码上色时,有时你会错过规则…哎呀