主要是在原来的css基础上增加了一个自定义的RowSelect属性,这个属性通过expression表达式进行设置,我现在的感觉是expression中必须是一个?表达式,在?表达式中才能写我们想要的javascript方法,等以后有时间了再专门来求证这个疑问。如果是我猜想的这样,哪有什么更好的替代方式吗?这种替代方式就是behavior吗?一切都安排在以后清闲了再研究吧!
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>双色表格CSS实例</title>
<style type="text/css">
.test {
background-color:red;
}
#DataGrid1 tr {
background-color: expression(
this.sectionRowIndex == 0 ? "#FFCCCC" :
(
(this.sectionRowIndex % 2 == 0) ? "#FFF0F0" : "#F0F0FF"
)
);
color: expression(this.sectionRowIndex == 0 ? "#FFFFFF" : "");
font-weight: expression(this.sectionRowIndex == 0 ? "BOLD" : "");
RowSelect: expression(0==1?"":(
onclick = function()
{
window.currentRow?window.currentRow.style.backgroundColor=(
this.style.backgroundColor != "#69cdff" ? "#69cdff" :
(
this.sectionRowIndex == 0 ? "#FFCCCC" :
(
this.sectionRowIndex % 2 == 0 ? "#FFF0F0" : "#F0F0FF"
)
)
):"";
this.style.backgroundColor="#f3c3f3";
window.currentRow=this;
window.stopOut=true;
}
)
);
TableSelect: expression(
this.sectionRowIndex == 0 ? "" :
(
onmouseover = function()
{
window.stopOut=false;
this.style.backgroundColor =
(
this.style.backgroundColor != "#69cdff" ? "#69cdff" :
(
this.sectionRowIndex == 0 ? "#FFCCCC" :
(
this.sectionRowIndex % 2 == 0 ? "#FFF0F0" : "#F0F0FF"
)
)
)
},
onmouseout = function()
{
if(window.stopOut) return;
this.style.backgroundColor =
(
this.style.backgroundColor != "#69cdff" ? "#69cdff" :
(
this.sectionRowIndex == 0 ? "#FFCCCC" :
(
this.sectionRowIndex % 2 == 0 ? "#FFF0F0" : "#F0F0FF"
)
)
)
}
)
);
}
#DataGrid1 td {
background-color:expression(
this.cellIndex == 0 ?
(
this.parentElement.sectionRowIndex == 0 ? "#FFCCCC" : "#DDDDDD"
)
: null
)
}
.FindAreaTable1 {
font-size: 12px;
color: #333333;
text-decoration: none;
width: 400px;
cursor: hand;
background-color: #FFFFFF;
vertical-align: middle;
text-align: center;
}
</style>
</head>
<body>
<table cellspacing="1" class="FindAreaTable1" ID="DataGrid1">
<tr>
<td>首行首列</td>
<td>首行</td>
<td>首行</td>
<td>首行</td>
<td>首行</td>
<td>首行</td>
</tr>
<tr>
<td>行1首列</td>
<td>行1</td>
<td>行1</td>
<td>行1</td>
<td>行1</td>
<td>行1</td>
</tr>
<tr>
<td>行2首列</td>
<td>行2</td>
<td>行2</td>
<td>行2</td>
<td>行2</td>
<td>行2</td>
</tr>
<tr>
<td>行3首列</td>
<td>行3</td>
<td>行3</td>
<td>行3</td>
<td>行3</td>
<td>行3</td>
</tr>
<tr>
<td>行4首列</td>
<td>行4</td>
<td>行4</td>
<td>行4</td>
<td>行4</td>
<td>行4</td>
</tr>
<tr>
<td>行5首列</td>
<td>行5</td>
<td>行5</td>
<td>行5</td>
<td>行5</td>
<td>行5</td>
</tr>
</table>
</body>
</html>