日期:2014-05-16  浏览次数:20425 次

求助!=====限制表格某列操作的问题=====
有如下代码,已经实现输入条件过滤表格中所有单元格内容,现在我想限制其中某1列或几列不参加过滤,其余列参加.
也就是说网页制作人员通过简单操作表头控制某列不参加过滤,用户在页面上输入条件后过滤的是其余列中的单元格内容.请问该怎么写?
麻烦编写一个function(),然后通过对表头的操作,实现这一要求. 谢谢谢谢谢谢谢了:)~
对了,另外最好是还能使不参加过滤的列和其他列颜色不同.


<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!="")
  {
  for(var i=0;i<Tbl.rows.length;i++)
  {
  var tr=Tbl.rows[i];
  if(tr.innerHTML.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";
  }
}


</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 width="500" id="Tbl1" border="1">
<tr><td>12</td><td>34</td><td>45</td><td>45</td></tr>
<tr><td>呵呵</td><td>56</td><td>1911</td><td>2</td></tr>
<tr><td>12</td><td>55</td><td>1920</td><td>3</td></tr>
<tr><td>ddd</td><td>12</td><td>13</td><td>2356</td></tr>
<tr><td>呵呵</td><td>55</td><td>1877</td><td>rt</td></tr>
<tr><td>ddeed</td><td>11</td><td>12</td><td>hh</td></tr>
<tr><td>ddafd</td><td>58</td><td>1988</td><td>77</td></tr>
</table>
</center>
</body>
</html>

------解决方案--------------------
[code=HTML][/code]
<html > 
<head > 
<title > </title > 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" / > 
</head > 
<body > 
<center > 
<script type="text/javascript" > 
var filtercolumns="";

function Search(Tbl,TextValue) 

var count=0; 
var keyWord=TextValue.value; 
if(keyWord!="") 

for(var i=0;i <Tbl.rows.length;i++) 

if(filtercolumns=="")
{
var tr=Tbl.rows[i]; 
if(tr.innerHTML.indexOf(keyWord)==-1) 
tr.style.display="none"; 
else 

tr.style.display="block"; 
count++;