jquery关于表格隐藏和显示问题

时间:2023-03-08 20:36:59
jquery关于表格隐藏和显示问题

1. 关于指定表格指定列隐藏显示

$(":checkbox[name*=month]").each(function(){
if(!$(this).attr("checked")){
var colnum = $(this).val();
$("#listPage").find('tr').find("td:eq(" + colnum.toString() + ")").hide();
$("#listPage").find('tr').find("th:eq(" + colnum.toString() + ")").hide();
} else {
var colnum = $(this).val();
$("#listPage").find('tr').find("td:eq(" + colnum.toString() + ")").show();
$("#listPage").find('tr').find("th:eq(" + colnum.toString() + ")").show();
}
});

或者:

$(document).ready(function(){
$("td:eq(2)",$("tr")).hide();
$("td:eq(3)",$("tr")).hide();
$("td:eq(4)",$("tr")).hide();
$("#button1").click(function(){
$("td:eq(2)",$("tr")).toggle(1000); //设置为0表示不用动画 ,1000就1秒的时间来展示或者隐藏
$("td:eq(3)",$("tr")).toggle(1000);
$("td:eq(4)",$("tr")).toggle(1000);
});
});

2. 获取表格的列数

var col = $("#listPage").find("th").prevAll().length;//获取表格列数
for(var i=0;i<=col;i++){
if($("#listPage").find('tr').find("th:eq(" + i.toString() + ")").css("display")=='none') {//判断列是否被隐藏
$("input[value="+i+"]").attr("checked",false);
} else {
$("input[value="+i+"]").attr("checked",true);
}
}

3. 在jquery中如果想查找一个可见的元素用 :visible

例如$("tr:visible")

如果想找不显示的,可以用

$("tr:not(':visible')")就行了。