以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XSL/XSLT/XSL-FO/CSS 』  (http://bbs.xml.org.cn/list.asp?boardid=8)
----  [求助]参数的使用问题,用和不用{},含义有什么区别?  (http://bbs.xml.org.cn/dispbbs.asp?boardid=8&rootid=&id=57868)


--  作者:xieyimin008
--  发布时间:1/9/2008 4:47:00 PM

--  [求助]参数的使用问题,用和不用{},含义有什么区别?
<?xml version="1.0" encoding="gb2312"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:output method="xml" omit-xml-declaration = "yes" indent="yes" version="4.0"/>
  <!--
 Copyright (C) 2004,2005 AspSky.Net. All rights reserved.
 Written by dvbbs.net Lao Mi
 Web: http://www.aspsky.net/,http://www.dvbbs.net/
 Email: eway@aspsky.net
 -->
<xsl:template  match="/">
<a href="cookies.asp?action=stylemod&amp;skinid=&amp;boardid=$boardid" >恢复默认设置</a>
<xsl:for-each select="xml/style"><br /><a

href="cookies.asp?action=stylemod&amp;skinid={@id}_&amp;boardid=$boardid"

title="使用模板[{@stylename}]"><b><xsl:value-of select="@stylename"/></b></a>
<xsl:call-template name="cssmenu">
<xsl:with-param name="id" select="@id"/>
<xsl:with-param name="stylename" select="@stylename"/>
</xsl:call-template>
</xsl:for-each>
</xsl:template>
<xsl:template name="cssmenu">
<xsl:param name="id"/>
<xsl:param name="stylename"/>
<xsl:for-each select="/xml/xml/css[tid=$id]"><br /><a

href="cookies.asp?action=stylemod&amp;skinid={$id}_{@id}&amp;boardid=$boardid"

title="使用模板[{$stylename}],使用Css样式[{@type}]" ><xsl:value-of

select="@type"/></a></xsl:for-each>
</xsl:template>
</xsl:stylesheet>

请各位大侠指点:{$id}和$id的含义有什么不同,请帮忙详细解答,谢谢!最近要急用,感激不尽!


--  作者:Qr
--  发布时间:1/10/2008 8:42:00 AM

--  
标记名中不能包含“<”“>”等特殊字符,但起始标记中常要取XML中的值,为了能取值,“{}”是必须的,正如xsl:value-of一样,是标准的东西。
如果取的值是属性值,则要加@,在标记中取值,就要遵循上述原则,即加上{}。而你的代码使用的是“$”,表示id是变量,其用法和原理同上。


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms