0
我在访问XSLT中的变量时遇到问题。
我只是定义VAR这样的:使用Xsl变量
<xsl:variable name="myName" select="@owner"/>
当我使用此代码它不工作:
<title>{$myName}</title>
但此代码的工作:
<title><xsl:value-of select="$myName"/></title>
我想比较上面的变量从实体中的XML 当值从实体等于MYNAME我显示一些代码否则另一个码显示
<xsl:for-each select="message">
<xsl:choose>
<xsl:when test="from = $myName">
...
</xsl:when>
<xsl:otherwise>
...
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
XML文件包含这样的信息:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="history.xsl"?>
<history xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="history.xsd" owner="Mike">
<message>
<from>Mike</from>
<to>Gem</to>
<date>2002-09-24</date>
<color>red</color>
<size>20</size>
<family>cursive</family>
<style>overline</style>
<body>welcome</body>
</message>
</history>
您需要提供相关的XML输入和预期的XML输出,以便我们更好的锻炼问题。看起来你想'test =“@ from = $ myName”'(介意“@”) – programaths
你在变量中引用的“owner”属性在哪里? – programaths
你想试试这个:http://xsltransform.net/bwdwsD? – programaths