to ssm1226(雨中人)可否探讨一下昨天的那个xsl分列问题,有兴趣的也可以参与

yonghengdizhen 2002-12-12 09:34:33
昨天回去又把算术运算的问题搞定了..
想和你探讨一下如何解决最后多输出一个空行的问题.

<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<HTML>
<BODY>
<TABLE BORDER="1" width="100" cellspace="0" cellpadding="0" bgcolor="dddddd">
<xsl:if test="./root/*[end() $and$ index()=5]">
<TR>
<xsl:for-each select="/root/node">
<TD bgcolor="ffffff">
<xsl:if expr="(childNumber(this) % 2) == 0"><xsl:value-of select="."/></xsl:if>
<xsl:if expr="(childNumber(this) % 2) == 1"><xsl:value-of select="."/></xsl:if>
</TD>
<xsl:if expr="(childNumber(this) % 2) == 0 && (6 != childNumber(this))"><TR/></xsl:if>
</xsl:for-each>
</TR>
</xsl:if>
</TABLE>
</BODY>
</HTML>
</xsl:template>
</xsl:stylesheet>


另外就昨天发的贴子主题不够严肃的问题向你道歉..
...全文
45 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
kuangxiang007 2002-12-13
  • 打赏
  • 举报
回复
想停止都來不及﹐忘了問expr是什么意思﹐跟test有什么區別
kuangxiang007 2002-12-13
  • 打赏
  • 举报
回复
這么多星﹐正好求學一下﹐相關的xml在哪里﹐怎么樣的﹐或相關的貼在哪里?好讓我學習學習
ssm1226 2002-12-12
  • 打赏
  • 举报
回复
顺便告老兄,来此领分,:)

http://expert.csdn.net/Expert/topic/1253/1253923.xml?temp=.227627
ssm1226 2002-12-12
  • 打赏
  • 举报
回复
那就是这个吧:

<xsl:if expr="(childNumber(this) % 2) == 0 && (this.parentNode.childNodes.length != childNumber(this))"><TR/></xsl:if>
逍遥小贼 2002-12-12
  • 打赏
  • 举报
回复
我也来听听各位的意见:)
yonghengdizhen 2002-12-12
  • 打赏
  • 举报
回复
to ssm1226(雨中人)
<xsl:if expr="(childNumber(this) % 2) == 0 && (6 != childNumber(this))"><TR/></xsl:if>

你的是附加了一个单元格..
其实我的问题是上面这个语句的后半部分条件
(6 != childNumber(this))
因为我事先无法得知有多少个节点.6并不一定是代表着节点个数,因此需要一个可靠的方法获得当前执行的条件是否是最后一个结点如果是的话将不再输出<TR/>
wgrabob1 2002-12-12
  • 打赏
  • 举报
回复
来看看
—————————————————————————————————
想我所想  做我所做
我的QQ:156838384 ^-^
gucs 2002-12-12
  • 打赏
  • 举报
回复
占个座
ssm1226 2002-12-12
  • 打赏
  • 举报
回复
老兄,别那么客气啦,

不好意思,我一直在用test没想到用expr,老兄真是高人,

好啦,说话算数,开财为老兄送分:)
ssm1226 2002-12-12
  • 打赏
  • 举报
回复
<?xml version="1.0" encoding="gb2312"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<html>
<head>
<title>EN</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>
</head>
<body>
<TABLE BORDER="1" width="100" cellspace="0" cellpadding="0" bgcolor="dddddd">
<TR>
<xsl:for-each select="/root/node">
<TD bgcolor="ffffff">
<xsl:choose>
<xsl:when expr="(childNumber(this) % 2) == 0"><xsl:value-of select="."/></xsl:when>
<xsl:when expr="(childNumber(this) % 2) == 1"><xsl:value-of select="."/></xsl:when>
</xsl:choose>
</TD>

<xsl:if expr="(childNumber(this) % 2) == 0 && (6 != childNumber(this))"><TR/></xsl:if>
</xsl:for-each>
<xsl:if expr="(childNumber(this) % 2)==1"><TD bgcolor="#ffffff"> </TD></xsl:if>
</TR>
</TABLE>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
ssm1226 2002-12-12
  • 打赏
  • 举报
回复
不知道,是不是这样:)


yonghengdizhen 2002-12-12
  • 打赏
  • 举报
回复
OK..讨论到此为止..结贴!!
ssm1226 2002-12-12
  • 打赏
  • 举报
回复
这样应该可以:

<xsl:if expr="(documentElement.childNodes.length < 7)">

===========================================================
另外,不知道匹配模式下是否可以使用dom的属性和方法(我猜测是不能)

========>好像不行:(
===========================================================
无爱大叔 2002-12-12
  • 打赏
  • 举报
回复
天上好多星星
yonghengdizhen 2002-12-12
  • 打赏
  • 举报
回复
to meizz(梅花雨)
老大今天放假..
meizz 2002-12-12
  • 打赏
  • 举报
回复
关于XSL与XML方面孟子老大是高手。
meizz 2002-12-12
  • 打赏
  • 举报
回复
呵呵,你们二位热火朝天,XSL我只有干瞪眼的份了。
yonghengdizhen 2002-12-12
  • 打赏
  • 举报
回复
另:你说的方法确实有效..看来多种方法必须结合起来用
yonghengdizhen 2002-12-12
  • 打赏
  • 举报
回复
to ssm1226(雨中人)

不知道是否可以通过this.parentNode.childNodes的应用,把上面的用匹配模式实现的test表达式用expr和xsl元素实现来..
另外,不知道匹配模式下是否可以使用dom的属性和方法(我猜测是不能)

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧