====请教一个表格过滤问题,麻烦帮帮忙 :)=====
有以下代码,已经实现随意点选进行单列过滤。
我现在想加入一个脚本,使程序员可以随便定义用户在多列中只能选择特定的几列进行过滤,请问要怎么写? 谢谢
<html>
<head>
<title> </title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
</head>
<body>
<center>
<script type="text/javascript">
function Search(Tbl,TextValue)
{
var count=0;
var keyWord=TextValue.value;
if(keyWord==""){
alert("查询内容不能为空!");
TextValue.focus();
return;
}
for(var i=0;i<Tbl.rows.length;i++) {
var tr=Tbl.rows[i];
if(Tbl.curCol<0){
if(tr.innerHTML.indexOf(keyWord)==-1){ //全局
tr.style.display="none";
}
else{
tr.style.display="block";
count++;
}
}
else{
if(tr.childNodes(Tbl.curCol).innerText.indexOf(keyWord)==-1) //选择
tr.style.display="none";
else{
tr.style.display="block";
count++;
}
}
}
if(count==0){
alert( '找不到你要的记录! ');
ListAll(Tbl);
}
}
function ListAll(Tbl)
{
for(var i=0;i <Tbl.rows.length;i++)
{
Tbl.rows[i].style.display="block";
}
}
function clickcolor()
{
if(event.srcElement.tagName!="td"&&event.srcElement.tagName!="TD"){ //判断触发事件的元素
return;
}
var cancel=false;
var colI=event.srcElement.cellIndex;
for(var i=0;i <Tbl1.rows.length;i++){
if(Tbl1.curCol>=0){
Tbl1.rows(i).cells(Tbl1.curCol).bgColor="";
}
if(Tbl1.curCol!=colI){
Tbl1.rows(i).cells(colI).bgColor="red";
} else{
cancel=true;
}
}
if(cancel){
Tbl1.curCol="-1";
} else{
Tbl1.curCol=colI;
}
}
</script>
<input name="ttt" id="ttt" type="text" style="width:200">
<input type="button" value="查找" onclick="Search(Tbl1,ttt)" id="btFind">
<input type="button" value="返回" onclick="ListAll(Tbl1)" id="btListAll">
<br >
<table cellpadding=0 cellspacing=0 width="500" id="Tbl1" border="1" onclick=clickcolor() curCol="-1" >
<tr><td>aaa</td><td>12</td><td>1988</td></tr>
<tr><td>呵呵</td><td>ghn</td><td>ol</td></tr>
<tr><td>12</td><td>x</td><td>s</td></tr>
<tr><td>ddd</td><td>12</td><td>13</td></tr>
<tr><td>呵呵</td><td>yt</td><td>1877</td></tr>
<tr><td>ddeed</td><td>11</td><td>12</td></tr>
<tr><td>ddafd</td><td>58</td><td>1988</td></tr>
</table>
</center>
</body>
</html>
------解