首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

表格的一个小疑点,请帮忙

2012-03-27 
表格的一个小问题,请帮忙以下代码已经实现了表格过滤.不过因为表格的头两行跟最后一行要写一些固定的东西,

表格的一个小问题,请帮忙
以下代码已经实现了表格过滤.不过因为表格的头两行跟最后一行要写一些固定的东西,所以不要求参加过滤.
问题:我想让表格的第1,2行和最后一行不参加过滤,该怎么弄?


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

</script>
</head>

<body> 
<script type="text/javascript">

var filtercolumns=""; 
   
   
function setFilter(Tbl) {  
 
for(var i=0;i<Tbl.rows[0].cells.length;i++) {
if(Tbl.rows[0].cells[i].getAttribute("filter")!=null &&Tbl.rows[0].cells[i].getAttribute("filter")=="false")

{

var temp = filtercolumns+i+ '|'; 
filtercolumns = temp; 
}
}
}

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++; 


else { 
var tfilter = filtercolumns.substr(0,filtercolumns.length-1); 
var columns = tfilter.split( '|'); 
var html = ""; 
for(var k=0;k <Tbl.rows[i].cells.length;k++) { 
var flag = true; 
for(var j=0;j <columns.length;j++) { 
var col= columns[j]; 
if(col==k) flag=false; 

if(flag==true) { 
html += Tbl.rows[i].cells[k].innerHTML; 


if(html.indexOf(keyWord)==-1) 
Tbl.rows[i].style.display="none"; 
else { 
Tbl.rows[i].style.display="block"; 
count++; 




if(count==0) { 
ListAll(Tbl); 
alert( '找不到你要的记录!'); 



function ListAll(Tbl) { 
for(var i=0;i <Tbl.rows.length;i++) { 
Tbl.rows[i].style.display="block"; 

}
</script>
<center>
<input name="condtext" id="condtext" type="text" style="width: 200">
<input type="button" value="查找" onclick="setFilter(FilTable);Search(FilTable,condtext);">
<input type="button" value="返回" onclick="ListAll(FilTable)">

<br>




<table summary="" cellpadding="0" cellspacing="0" width="500" border="1" id="FilTable">

<tr>
<thead>
<th colspan="5" align="center">商场货物统计表</th>
</tr>
<tr>
<th>食品</th>
<th>日用</th>
<th>药品</th>
<th>化妆</th>
</tr>
</thead>
<tbody>
<tr>
<td width="25%">香肠</td>
<td width="25%">刷子</td>
<td width="25%">先锋4</td>
<td width="25%">强生婴儿润肤</td>
</tr>
<tr>
<td>薯片</td>
<td>抹布</td>
<td>螺旋酶素</td>
<td>4</td>
</tr>
<tr>
<td>黑白配</td>
<td>拖布</td>
<td>3</td>


<td>舒服佳沐浴露</td>
</tr>
<tr>
<td>雀巢咖啡</td>
<td>2</td>
<td>康泰克胶囊</td>
<td>倩碧小黄油</td>
</tr>

</tbody>
<tr >

<td colspan="4" >物品种类:100</td>

</tr>

</table>

</center>
</body>
</html>

[解决办法]

HTML code
<html > <head > <title > </title > <meta http-equiv="Content-Type" content="text/html; charset=gb2312" / > </script > </head > <body >  <script type="text/javascript" > var filtercolumns="";                                                                                            function setFilter(Tbl) {                                             for(var i=0;i <Tbl.rows[0].cells.length;i++) { if(Tbl.rows[0].cells[i].getAttribute("filter")!=null &&Tbl.rows[0].cells[i].getAttribute("filter")=="false") { var temp = filtercolumns+i+  ' | ';  filtercolumns = temp;  } } } function Search(Tbl,TextValue) {  var count=0;  var keyWord=TextValue.value;  if(keyWord!="") {  [color=#FF0000]for(var i=2;i  <Tbl.rows.length-1;i++) {  [/color]if(filtercolumns=="") {  var tr=Tbl.rows[i];  if(tr.innerHTML.indexOf(keyWord)==-1)  tr.style.display="none";  else {  tr.style.display="block";  count++;  }  }  else {  var tfilter = filtercolumns.substr(0,filtercolumns.length-1);  var columns = tfilter.split(  ' | ');  var html = "";  for(var k=0;k  <Tbl.rows[i].cells.length;k++) {  var flag = true;  for(var j=0;j  <columns.length;j++) {  var col= columns[j];  if(col==k) flag=false;  }  if(flag==true) {  html += Tbl.rows[i].cells[k].innerHTML;  }  }  if(html.indexOf(keyWord)==-1)  Tbl.rows[i].style.display="none";  else {  Tbl.rows[i].style.display="block";  count++;  }  }  }  }  if(count==0) {  ListAll(Tbl);  alert(  '找不到你要的记录! ');  }  }  function ListAll(Tbl) {  for(var i=0;i  <Tbl.rows.length;i++) {  Tbl.rows[i].style.display="block";  }  } </script > <center > <input name="condtext" id="condtext" type="text" style="width: 200" > <input type="button" value="查找" onclick="setFilter(FilTable);Search(FilTable,condtext);" > <input type="button" value="返回" onclick="ListAll(FilTable)" > <br > <table summary="" cellpadding="0" cellspacing="0" width="500" border="1" id="FilTable" > <tr > <thead > <th colspan="5" align="center" >商场货物统计表 </th > </tr > <tr > <th >食品 </th > <th >日用 </th > <th >药品 </th > <th >化妆 </th > </tr > </thead > <tbody > <tr > <td width="25%" >香肠 </td > <td width="25%" >刷子 </td > <td width="25%" >先锋4 </td > <td width="25%" >强生婴儿润肤 </td > </tr > <tr > <td >薯片 </td > <td >抹布 </td > <td >螺旋酶素 </td > <td >4 </td > </tr > <tr > <td >黑白配 </td > <td >拖布 </td > <td >3 </td > <td >舒服佳沐浴露 </td > </tr > <tr > <td >雀巢咖啡 </td > <td >2 </td > <td >康泰克胶囊 </td > <td >倩碧小黄油 </td > </tr > </tbody > <tr  > <td colspan="4"  >物品种类:100 </td > </tr > </table > </center > </body > </html > 

热点排行