网上有很多,这里介绍三种:
第一种方法,就是使用id,这个方法可以在生成html的时候动态设置tr的id,也是用得最多最简单的一种,如下:
1
2
3
4
5
6
|
< table >
< tr >< td >这行不隐藏</ td ></ tr >
< tr id = "tr_1" >< td >这行要隐藏</ td ></ tr >
< tr id = "tr_2" >< td >这行要隐藏</ td ></ tr >
...
</ table >
|
那么控制显隐可以直接使用
1
2
3
|
for ( var i = 1; i < tr_len; i++){ //tr_len是要控制的tr个数
$( "#tr_" +i).hide();
}
|
第二种方法,是使用$.each(),这个方法需要设置table的id,如下:
1
2
3
4
5
6
|
<table id= "Tbl" >
<tr><td>这行不隐藏</td></tr>
<tr><td>这行要隐藏</td></tr>
<tr><td>这行要隐藏</td></tr>
...
</table>
|
那么控制显隐可以直接使用
1
2
3
4
5
|
$.each($( "#Tbl tr" ), function (i){
if (i > 0){
this .style.display = 'none' ;
}
});
|
第三种方法,是通过属性筛选器,这个方法需要给tr加上某个特定属性,比如class,如下:
1
2
3
4
5
6
|
<table id= "Tbl" >
<tr><td>这行不隐藏</td></tr>
<tr><td class= "hid" >这行要隐藏</td></tr>
<tr><td class= "hid" >这行要隐藏</td></tr>
...
</table>
|
那么控制显隐可以直接使用
1
2
3
4
|
var trs = $( "tr[class='hid']" );
for (i = 0; i < trs.length; i++){
}
|
就这么简单。如果是要显示的话,把相应的方法改成show()或者display属性改为”"即可
实际应用:
说明:默认情况下,只显示“对应页面名称”所在行,当点击单选按钮时,显示不同的行。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
< tr >
< td class = "tr_title_edit" >< label for = "f_navname" >对应页面链接< font color = "red" >*</ font ></ label ></ td >
< td class = "tr_content_edit" >
< input type = "radio" id = "f_inner" name = "f_navState" value = "1" checked = "checked" />< label for = "f_inner" >内部链接</ label >
< input type = "radio" id = "f_outer" name = "f_navState" value = "2" />< label for = "f_outer" >外部链接</ label ></ td >
</ tr >
< tr id = "il" style = "display:block" >
< td class = "tr_title_edit" >< label for = "f_pagename" >对应页面名称</ label ></ td >
< td class = "tr_content_edit" >< select name = 'f_pageid' id = "f_pageid" >
< option value = "" ></ option >
< option value = "" >新闻</ option >
< option value = "" >通知</ option >
</ select ></ td >
</ tr >
< tr id = "ol" style = "display:none" >
< td class = "tr_title_edit" >< label for = "f_navname" >外部链接</ label ></ td >
< td class = "tr_content_edit" >< input type = "text" class = "inputLine" size = "40" id = "f_outsidelink" name = "f_outsidelink" /></ td >
</ tr >
|
通过id控制隐藏和显示如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
$( "input[name='f_navState']" ).click( function (){
//if($("input[name='f_navState']").attr("checked")==true){
$( "input[name='f_navState']" ).each( function (i){
if ( this .checked){
var f_navState = $( "input[name='f_navState']" )[i].value; //获得单选框的值
if (f_navState==1){
//alert(123);
$( "#il" ).show();
$( "#ol" ).hide();
} else {
//alert(456);
$( "#ol" ).show();
$( "#il" ).hide();
}
}
});
//}
});
|