我是XSLT的新手,我想知道如何使用从XML节点获取的值修改标记的href属性。
特别是,我的XML文件就像这样
<root>
<privileges edit="1" del="1"></privileges>
<rooms>
<room>
<id>1</id>
<roomNr>101</roomNr>
<locked>0</locked>
<lockdownReason></lockdownReason>
</room>
</rooms>
</root>
我的XSL文件就像
<xsl:for-each select="root/rooms/room">
<div class="column toolbox">
<xsl:if test="$edit = 1">
<a href='admin.php?room=VALUE_OF_ID__OF_CURRENTLY_SELECTED_NODE'>this is a link</a>
<p>edit is true</p>
</xsl:if>
</div>
<div class="column">Room Nr.:<xsl:value-of select="roomNr"/></div>
</xsl:for-each>
大写字母表示我试图完成的任务。 有人请回复。 感谢
答案 0 :(得分:2)
对于您的XSLT,最简单的方法是使用Attribute Value Template (AVT)并选择<id>
的值,如下所示:
<a href='admin.php?room={id}'>this is a link</a>
答案 1 :(得分:0)
您正在寻找xsl:attribute。我不确定当前id
的引用应该如何,但是这样的事情应该让你开始:
<a>
<xsl:attribute name="href">admin.php?room=<xsl:value-of select="./id"/></xsl:attribute>
this is a link
</a>