以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XSL/XSLT/XSL-FO/CSS 』  (http://bbs.xml.org.cn/list.asp?boardid=8)
----  我又来了!关于index语句的问题  (http://bbs.xml.org.cn/dispbbs.asp?boardid=8&rootid=&id=11494)


--  作者:清水眸子
--  发布时间:11/2/2004 2:13:00 PM

--  我又来了!关于index语句的问题
比如这个东东

<?xml version='1.0' encoding='GB2312'?><?xml-stylesheet type='text/xsl' href='dyforxml.xsl'?>

<sdoa>

<A_DY>
<A_DY_TITLE>aaaaaaaaaaaaaaaaaaaaaaaaaaaaa</A_DY_TITLE>
<A_DY_LINK>/SGSOA/jrgz.nsf/0/E4B031E751AD393748256F400003F76C?OpenDocument</A_DY_LINK>
<A_DY_DATE>2004-11-02</A_DY_DATE>
<A_DY_EMERGENCY>一般</A_DY_EMERGENCY>
<A_DY_LINK_DETAIL>/SGSOA/jrgz.nsf/fmNavigator?OpenForm*viewNow=VwDysw</A_DY_LINK_DETAIL>
</A_DY>

<A_DY>
<A_DY_TITLE>bbbbbbbbbbbbbbbbbbbbbbbb</A_DY_TITLE>
<A_DY_LINK>/SGSOA/jrgz.nsf/0/E4B031E751AD393748256F400003F76C?OpenDocument</A_DY_LINK>
<A_DY_DATE>2004-11-02</A_DY_DATE>
<A_DY_EMERGENCY>一般</A_DY_EMERGENCY>
<A_DY_LINK_DETAIL>/SGSOA/jrgz.nsf/fmNavigator?OpenForm*viewNow=VwDysw</A_DY_LINK_DETAIL>
</A_DY>

。。。。
。。。。比如有10个<A_DY></A_DY>

</sdoa>


10个<A_DY></A_DY>,我要显示前5个,用
  <xsl:for-each select="sdoa/A_DY[index()>=5]">
错误说'index' 不是一个有效的 XSLT 或 XPath 函数。 sdoa/A_DY[-->index()<-->=5]

把小于号换成$lt$也不行,


还有一个疑问,
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version='1.0'>
到底要用哪个地址啊?我以前用
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">,结果这个不能用substring函数,换成第一个就能用了。


--  作者:doubleG
--  发布时间:11/2/2004 2:16:00 PM

--  
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version='1.0'>
这个是正式版本,也就是真正的1.0版,下面那个是以前的讨论中的一个。在正式版中是没有index()这个函数的,只有position(),你可以用position()来替代index()。
--  作者:mailtolily
--  发布时间:11/3/2004 3:15:00 PM

--  
要显示前5个怎么写呀?
我用sdoa/A_DY[-->index()<-->=5]
把小于号换成$lt$也不行呢!



--  作者:doubleG
--  发布时间:11/3/2004 3:37:00 PM

--  
呵呵 老版本的不在行
--  作者:mailtolily
--  发布时间:11/3/2004 3:47:00 PM

--  
那我该如何解决这个问题呢?
谢谢
--  作者:doubleG
--  发布时间:11/3/2004 3:54:00 PM

--  
哦 我是说我对老版本的不在行,如果你要是用<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version='1.0'>
的话,用position()就可以了,而且是支持>和=的 <要转义 用&amp;lt;取代


--  作者:mailtolily
--  发布时间:11/3/2004 3:59:00 PM

--  
成功。
谢谢!
--  作者:清水眸子
--  发布时间:11/8/2004 10:40:00 AM

--  
好哇,doubleG你不理我!
--  作者:doubleG
--  发布时间:11/8/2004 2:37:00 PM

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