Xslt 从xsl读取值
我有一个类似于:Xslt 从xsl读取值,xslt,Xslt,我有一个类似于: <UserData> <UserDataField name="IsShipAllow">true</UserDataField> <UserDataField name="OrderType">InHouse</UserDataField> <UserDataField name="OrderStockType">INSTOCK</UserDataField&g
<UserData>
<UserDataField name="IsShipAllow">true</UserDataField>
<UserDataField name="OrderType">InHouse</UserDataField>
<UserDataField name="OrderStockType">INSTOCK</UserDataField>
</UserData>
真的
室内
因斯托克
当name=“OrderStockType”时,我想读取字段的值=INSTOCK
我将xsl编写为
<xsl:choose>
<xsl:when test="UserData/UserDataField/@name = 'OrderStockType'">
<xsl:attribute name="Type">
<xsl:value-of select="UserData/UserDataField/@name" />
</xsl:attribute>
</xsl:when>
<xsl:otherwise>
<xsl:attribute name="Type">FALSE</xsl:attribute>
</xsl:otherwise>
</xsl:choose>
错误的
为什么要使用xsl从XML获取值?这样做容易多了。请尝试/UserData/UserDataField[@name='OrderStockType']
您的XSL代码段是无用的,因为我们不知道执行时上下文节点是什么-请参阅:。发生了什么?它是如何失败的?(我假设它失败了,否则你就不会问这个问题了)。你想产生什么样的输出呢?它不会出错,不会拾取任何值。我曾经按照扎罗的建议使用xpath。它起作用了。