在表中隐藏多个TD的脚本无法正常工作

时间:2017-04-06 18:16:09

标签: jquery

我试图在巨大的表格中隐藏一些TD。

我试过了:

var getAbsoluteURL = function (url, href) {
    var path = url.split(/[#?]/)[0];
    var basePath = path.slice(0, path.lastIndexOf('/'));
    var domain = url.split('/').slice(0,3).join('/');
    var protocol = url.split('/')[0];

    switch (href.charAt(0)) {
        case '/':
        {
            if (href.length > 1 && href.charAt(1) == '/')
                return protocol + href;
            else
                return domain + href;
        }
        case '#':
        case '?':
            return path + href;
        default:
            return basePath + '/' + href;
    }
}

但我无法隐藏超过10个Tds,所以我想出了下面的脚本。 我是从https://api.jquery.com/multiple-selector/得到的。 然后我尝试了这个:

$( document ).ready(function() {
$( "td:eq( 1 )" ).css( "display", "none" );
$( "td:eq( 2 )" ).css( "display", "none" );
$( "td:eq( 3 )" ).css( "display", "none" );
$( "td:eq( 4 )" ).css( "display", "none" );
$( "td:eq( 5 )" ).css( "display", "none" );
$( "td:eq( 6 )" ).css( "display", "none" );
$( "td:eq( 7 )" ).css( "display", "none" );
$( "td:eq( 9 )" ).css( "display", "none" );
$( "td:eq( 11 )" ).css( "display", "none" );
$( "td:eq( 12 )" ).css( "display", "none" );
$( "td:eq( 14 )" ).css( "display", "none" );
$( "td:eq( 16 )" ).css( "display", "none" );
$( "td:eq( 17 )" ).css( "display", "none" );
$( "td:eq( 19 )" ).css( "display", "none" );
$( "td:eq( 21 )" ).css( "display", "none" );
$( "td:eq( 22 )" ).css( "display", "none" );
$( "td:eq( 24 )" ).css( "display", "none" );
$( "td:eq( 26 )" ).css( "display", "none" );
$( "td:eq( 27 )" ).css( "display", "none" );
});

但这并不掩盖TD。 我确定我在第二个剧本上犯了一个小错误,但我找不到。

编辑: 我发现了这个问题。我也隐藏了某些包含文本的TD。它们应该显示:无。 很抱歉给您带来不便。

1 个答案:

答案 0 :(得分:2)

为什么不在td上使用要隐藏的类,然后在该类上使用jQuery选择器来隐藏它们?



$('td.hide').hide();

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<table>
<tr>
  <td class="hide">1</td>
  <td>2</td>
  <td class="hide">3</td>
  <td>4</td>
  <td class="hide">5</td>
</tr>
</table>
&#13;
&#13;
&#13;