3

假设您有一个 xml 文件:

<dictionary>
    <row>
        <table>log</table>
        <entity>Log</entity>
    </row>

    <row>
        <table>mail_macros</table>
        <entity>MailMacro</entity>
    </row>
</dictionary>

并且您想编写一个通用模板来从行中获取一个元素:

<xsl:template name="row">
    <xsl:param name="pElement" />
    <xsl:value-of select="./dictionary/row/$pElement />
</xsl:template>

因此,当我调用模板并将 pElement 设置为字符串“表”时,它会返回表值等。

是否可以在 xslt 1.0 中编写这样的表达式?因为这个不行。

4

1 回答 1

3

XPATH 表达式不是这样工作的。你需要 ....

 <xsl:value-of select="./dictionary/row/*[local-name()=$pElement] />

警告

假设您没有使用命名空间。如果不是,请告诉我们。

于 2012-07-25T16:53:46.463 回答