【问题标题】:Hiding the table border using jquery使用jquery隐藏表格边框
【发布时间】:2012-05-06 23:20:18
【问题描述】:

我有一个显示动态创建的表的 div(实际上是在 asp.net 中继器中)。根据从数据库中获取的项目,表的数量可能会有所不同。我在下面给出了一个带有 css 和 jquery 代码的示例标记。该表将再次被动态创建。我只给了两个,并没有在其中包含标记。

.todotable{border-bottom:1px solid white;}

<div id="divalert">
<table></table>
<table></table>
</div>

 $(document).ready(function () {
       $("#divalert").last().css("border-bottom", "none");
  });

我的问题是,如何去除最后一张表格的边框?

【问题讨论】:

    标签: javascript jquery asp.net css


    【解决方案1】:

    我宁愿为此使用 CSS。在 CSS 可用时使用 JS 绝不是一个好主意 :-)

    #divalert table:last-child {
        border-bottom: none;
    }
    

    【讨论】:

    • 网站不必在每个浏览器上看起来都一样,尤其是在旧版浏览器上。 :-)
    • 向合唱团讲道,但仍然值得注意。
    【解决方案2】:

    您尚未选择表格。尝试以下方法之一:

    $("#divalert :last-child").css("border-bottom", "none");
    
    // or
    
    $("#divalert table").last().css("border-bottom", "none");
    $("#divalert table:last").css("border-bottom", "none"); // same as above
    

    【讨论】:

    • 使用$("#divalert table:last") 是一种稍微高效一点的方法,因此jQuery 不必选择所有表然后从结果中选择最后一个,而只需直接选择最后一个表即可。
    • table:last 将选择表格的最后一个元素
    • @Josh。这是不正确的。 :last 获取集合的最后一个匹配元素。 :last-child 将匹配所选元素中的最后一个元素。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-03-24
    • 2013-08-01
    • 2015-02-21
    • 2012-01-31
    • 2017-11-05
    • 1970-01-01
    • 2015-05-28
    相关资源
    最近更新 更多