javascript行选择

[code]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>test</title>

<script>
var varclk=null;
function change1(varid,val)
{
if(varclk!=null)
{
var e1=eval("document.all.td"+varclk);
for(i=0;i<e1.length;i++)
{
e1[i].style.background='#fff';
}
}
varclk=varid;
var e=eval("document.all.td"+varid);
for(i=0;i<e.length;i++)
{
e[i].style.background='#BCBAFA';
}
alert(val);
}
</script>
</head>
<body>
<table width="300" border="1">
<tr onClick="change1(1,1)">
<td id="td1">a</td>
<td id="td1">b</td>
<td id="td1">c</td>
<td id="td1">d</td>
<td id="td1">e</td>
</tr>
<tr onClick="change1(2,21)">
<td id="td2">a</td>
<td id="td2">b</td>
<td id="td2">c</td>
<td id="td2">e</td>
<td id="td2">d</td>
</tr>
<tr onClick="change1(3,23)">
<td id="td3">a</td>
<td id="td3">b</td>
<td id="td3">c</td>
<td id="td3">e</td>
<td id="td3">d</td>
</tr>
</table>
</body>
</html>
[/code]

下段代码没有好地解决办法,处理tr间隔行的问题
[code]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>test</title>
<style>
tr{
background:expression(this.rowIndex%2==0 ? "red":"#fff");
}

</style>
<script>
var varclk=null;
function change1(varid,val)
{
if(varclk!=null)
{
var e1=eval("document.all.td"+varclk);
for(i=0;i<e1.length;i++)
{
e1[i].style.background="red";
}
}
varclk=varid;
var e=eval("document.all.td"+varid);
for(i=0;i<e.length;i++)
{
e[i].style.background='#BCBAFA';
}
//alert(val);
}
</script>
</head>
<body>
<table width="300" border="1">
<tr onClick="change1(1,1)">
<td id="td1">a</td>
<td id="td1">b</td>
<td id="td1">c</td>
<td id="td1">d</td>
<td id="td1">e</td>
</tr>
<tr onClick="change1(2,21)">
<td id="td2">a</td>
<td id="td2">b</td>
<td id="td2">c</td>
<td id="td2">e</td>
<td id="td2">d</td>
</tr>
<tr onClick="change1(3,23)">
<td id="td3">a</td>
<td id="td3">b</td>
<td id="td3">c</td>
<td id="td3">e</td>
<td id="td3">d</td>
</tr>
</table>
</body>
</html>
[/code]

解决方式:
[code]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>test</title>
<style>
tr {
background-color:expression((this.sectionRowIndex%2==0)?"#F3F9FE":"#fff")
}
</style>
<script>
var varclk=null;
var oldcolor=null;
function change1(vartr)
{
if(varclk!=null)
{
varclk.style.backgroundColor=oldcolor;
}
oldcolor=vartr.style.backgroundColor;
vartr.style.backgroundColor='green';
varclk=vartr;
}
</script>
</head>
<body>
<table width="300" border="1">
<tr onClick="change1(this)">
<td>a</td>
<td>b</td>
<td>c</td>
<td>d</td>
<td>e</td>
</tr>
<tr onClick="change1(this)">
<td>a</td>
<td>b</td>
<td>c</td>
<td>e</td>
<td>d</td>
</tr>
<tr onClick="change1(this)">
<td>a</td>
<td>b</td>
<td>c</td>
<td>e</td>
<td>d</td>
</tr>
</table>
</body>
</html>
[/code]

变换文字颜色
[code]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>test</title>
<style>
tr {
background-color:expression((this.sectionRowIndex%2==0)?"#935645":"#fff")
}
</style>
<script>
var varclk=null;
var oldcolor=null;
function change1(vartr)
{
if(varclk!=null)
{
varclk.style.backgroundColor=oldcolor;
varclk.style.color="black";
}
oldcolor=vartr.style.backgroundColor;
vartr.style.backgroundColor='#456';
vartr.style.color="red";
varclk=vartr;
}
</script>
</head>
<body>
<table width="600" border="0">
<tr onClick="change1(this)">
<td>a</td>
<td>b</td>
<td>c</td>
<td>d</td>
<td>e</td>
</tr>
<tr onClick="change1(this)">
<td>a</td>
<td>b</td>
<td>c</td>
<td>e</td>
<td>d</td>
</tr>
<tr onClick="change1(this)">
<td>a</td>
<td>b</td>
<td>c</td>
<td>e</td>
<td>d</td>
</tr>
</table>
</body>
</html>
[/code]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值