table用数据岛后,tr不能出现交替颜色

wilowind 2006-05-31 10:55:41
采用数据岛,按常规方法设置交替颜色,总不成功。跟踪发现tr 的sectionRowIndex不变一直为0。
很是郁闷,谁有成功的例子给一个,多谢!!

--------------------------------------------
部分代码如下,由于代码过于复杂,有些不相干的删除了。
下面的代码很杂,有些手写的,有些程序解析生成的,呵呵。内嵌的编辑控件,大家可不予考虑。
<table id='DesignDBGrid1bodytab' datasrc='#DesignDataSource3' border='1' bordercolor='#cccccc' frame=void style='border-collapse:collapse;table-layout: fixed;' class='dbgridbodytab'><tbody><tr style='font-family:宋体;font-size:9pt;font-weight:normal;font-style:normal;' class='dbgridbodyrow' onmouseover="dbrowmouseover(this)" onmouseout="dbrowmouseout(this)" onclick="dbrowclick(this)"><td style='width:100px;'><input type='text' datafld='ID' style='width:100px;text-align:Left;border:0;' onmouseout="dbgridtextout(this)" onclick="dbgridtextsel(this)" class='dbgridtext'></td><td style='width:100px;'><input type='text' datafld='STUDENT_ID' style='width:100px;text-align:Left;border:0;' onmouseout="dbgridtextout(this)" onclick="dbgridtextsel(this)" class='dbgridtext'></td><td style='width:100px;'><input type='text' datafld='SUBJECT' style='width:100px;text-align:Left;border:0;' onmouseout="dbgridtextout(this)" onclick="dbgridtextsel(this)" class='dbgridtext'></td><td style='width:100px;'><input type='text' datafld='MARK' style='width:100px;text-align:Left;border:0;' onmouseout="dbgridtextout(this)" onclick="dbgridtextsel(this)" class='dbgridtext'></td></tr></tbody></table>

-------------------------------------------
// JavaScript Document

// dbgrid数据行鼠标事件
function dbrowmouseover(obj) {
obj.className = "dbgridbodyrowover";
}
function dbrowmouseout(obj) {
obj.className = "dbgridbodyrow";
}
function dbrowclick(obj1){
var obj = event.srcElement;
alert("obj:"+obj.className+" index:"+obj.parentElement.parentElement.sectionRowIndex);
alert("obj1:"+obj1.className+" index:"+obj1.sectionRowIndex);
}

// dbgrid内嵌控件鼠标事件
function dbgridtextout(obj) {
obj.className = "dbgridtext";
}
function dbgridtextsel(obj) {
obj.className = "dbgridtextsel";
}
--------------------------------------------
css文件

.dbgridbodyrow{
height:20px;
background-color:expression((this.sectionRowIndex%2==0)?"#66FFCC":"#CCFF33");
}
.dbgridbodyrow td{
background-color:expression((this.parentElement.sectionRowIndex%2==0)?"#66FFCC":"#CCFF33");
}
.dbgridtext{
background-color:expression((this.parentElement.parentElement.sectionRowIndex%2==0)?"#66FFCC":"#CCFF33");
border-color:expression((this.parentElement.parentElement.sectionRowIndex%2==0)?"#66FFCC":"#CCFF33");
border-width:1px;
border-style:solid;
}
.dbgridbodyrowover{
background-color:#0099CC;
}
.dbgridbodyrowover td{
background-color:#0099CC;
}
.dbgridbodyrowover td .dbgridtext{
background-color:#0099CC;
border-color:#0099CC;
border-width:1px;
border-style:dashed;
}
.dbgridtextsel{
border-color:#FF0000;
border-width:1px;
border-style:solid;
}
...全文
395 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
wilowind 2006-06-05
  • 打赏
  • 举报
回复
up
wilowind 2006-06-05
  • 打赏
  • 举报
回复
???????????????????????
wilowind 2006-06-02
  • 打赏
  • 举报
回复
顶一下
wilowind 2006-06-02
  • 打赏
  • 举报
回复
css 我也不太懂。但我提供的css在不用数据岛时是好用的。
用了数据岛, sectionRowIndex为0。在html tr只有一个,会不会是个bug?
thefirstwind 2006-06-02
  • 打赏
  • 举报
回复
是不是标签的问题,父子和继承关系总是比较麻烦
wilowind 2006-06-02
  • 打赏
  • 举报
回复
看样子,是没人懂了
ptma 2006-06-01
  • 打赏
  • 举报
回复
你的代码应该是可以的啊 , 我这里通过!

要不你试试 rowIndex (注意大小写)
chinastorm 2006-06-01
  • 打赏
  • 举报
回复
不懂,帮定
wilowind 2006-06-01
  • 打赏
  • 举报
回复
真没人懂吗
wilowind 2006-06-01
  • 打赏
  • 举报
回复
ptma(守望者) 采用了数据岛后能成,奇怪。不用数据岛是没问题的。
rowIndex试过了, 还是不行。
wilowind 2006-05-31
  • 打赏
  • 举报
回复
css和js在不用数据岛的情况下工作正常
ddcatlee 2006-05-31
  • 打赏
  • 举报
回复
tr上面的设置往往会被td的替换掉

wilowind 2006-05-31
  • 打赏
  • 举报
回复
补充一个xml数据例子

----------------------------------------

<xml id='DesignDataSource3' readonly='true' parentdatasource='DesignDataSource1' pfield='ID' cfield='STUDENT_ID'>
<?xml version="1.0" encoding="GB2312"?>
<ROWS>
<ROW>
<ID>1</ID>
<STUDENT_ID>1</STUDENT_ID>
<SUBJECT>中文</SUBJECT>
<MARK>90</MARK>
</ROW>
<ROW>
<ID>2</ID>
<STUDENT_ID>1</STUDENT_ID>
<SUBJECT>数学</SUBJECT>
<MARK>89</MARK>
</ROW>
<ROW>
<ID>3</ID>
<STUDENT_ID>1</STUDENT_ID>
<SUBJECT>自然</SUBJECT>
<MARK>87.5</MARK>
</ROW>
<ROW>
<ID>4</ID>
<STUDENT_ID>1</STUDENT_ID>
<SUBJECT>地理</SUBJECT>
<MARK>95</MARK>
</ROW>
<ROW>
<ID>5</ID>
<STUDENT_ID>1</STUDENT_ID>
<SUBJECT>历史</SUBJECT>
<MARK>86</MARK>
</ROW>
<ROW>
<ID>6</ID>
<STUDENT_ID>1</STUDENT_ID>
<SUBJECT>文学</SUBJECT>
<MARK>81</MARK>
</ROW>
<ROW>
<ID>7</ID>
<STUDENT_ID>1</STUDENT_ID>
<SUBJECT>逻辑设计</SUBJECT>
<MARK>91</MARK>
</ROW>
<ROW>
<ID>8</ID>
<STUDENT_ID>1</STUDENT_ID>
<SUBJECT>美术</SUBJECT>
<MARK>73</MARK>
</ROW>
<ROW>
<ID>9</ID>
<STUDENT_ID>1</STUDENT_ID>
<SUBJECT>音乐</SUBJECT>
<MARK>85.2</MARK>
</ROW>
<ROW>
<ID>10</ID>
<STUDENT_ID>1</STUDENT_ID>
<SUBJECT>数据结构</SUBJECT>
<MARK>95.5</MARK>
</ROW>
<ROW>
<ID>11</ID>
<STUDENT_ID>1</STUDENT_ID>
<SUBJECT>操作系统</SUBJECT>
<MARK>111</MARK>
</ROW>
<ROW>
<ID>12</ID>
<STUDENT_ID>1</STUDENT_ID>
<SUBJECT>代数</SUBJECT>
<MARK>125</MARK>
</ROW>
<ROW>
<ID>13</ID>
<STUDENT_ID>1</STUDENT_ID>
<SUBJECT>几何</SUBJECT>
<MARK>84</MARK>
</ROW>
<ROW>
<ID>14</ID>
<STUDENT_ID>1</STUDENT_ID>
<SUBJECT>图论</SUBJECT>
<MARK>24</MARK>
</ROW>
<ROW>
<ID>15</ID>
<STUDENT_ID>1</STUDENT_ID>
<SUBJECT>古代史</SUBJECT>
<MARK>59</MARK>
</ROW>
</ROWS>
wilowind 2006-05-31
  • 打赏
  • 举报
回复
丁丁

61,112

社区成员

发帖
与我相关
我的任务
社区描述
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
社区管理员
  • HTML(CSS)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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