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')")就行了。