隐藏整栏

时间:2013-03-24 14:52:21

标签: javascript jquery html

隐藏它所在的列。我创建了。

我的桌子在下面;

<table id="tester" border='1'>
<tbody>
    <tr>
        <td>test1</td>
        <td>test2</td>
        <td>test3</td>
    </tr>
    <tr>
        <td>test1</td>
        <td></td>
        <td>test3</td>
    </tr>
    <tr>
        <td>test1</td>
        <td>test2</td>
        <td>test3</td>
    </tr>
    <tr>
        <td>test1</td>
        <td>test2</td>
        <td>test3</td>
    </tr>
    <tr>
        <td>test1</td>
        <td>test2</td>
        <td>test3</td>
    </tr>
</tbody>
</table>

我试图开始工作的Jquery在下面;

任何帮助都将不胜感激。

3 个答案:

答案 0 :(得分:1)

试试这个:

function hidecol2() {
    var cell = $('#tester > tbody > tr:eq(1) > td:eq(1)');
    if (cell.text() == '') cell.parent().parent().children().children(':nth-child(2)').hide;
};

答案 1 :(得分:0)

我认为你正在寻找。

$.each($('table > tbody > tr'), function(){
  if($(this).find('td:empty').length>0){
    // You can hide
    $(this).hide();

    // Or Remove
    $(this).remove();

    // Or Fadeout and remove
    $(this).fadeOut(250, function(){$(this).remove();});
  }
});

答案 2 :(得分:0)

如果其中一个单元格为空,则隐藏整个列,请使用:

$.each($('td:empty'), function(){
  $('td:nth-child(' + ($(this).index() + 1) + ')').hide();
});

jsFiddle