【问题标题】:How to remove table row based on contents of one of the cells in the row (with jQuery)如何根据行中一个单元格的内容删除表格行(使用jQuery)
【发布时间】:2017-06-04 21:40:45
【问题描述】:

我正在尝试删除动态生成的表中的一行;问题是这些行都没有生成任何类或 ID,我无法获取代码。它生成如下代码:

<tr>
    <td class="label">Who referred you?</td>
    <td class="data">somebody</td>
</tr>
<tr>
    <td class="label">terms</td>
    <td class="data">these are the terms</td>
</tr>

有没有什么办法可以找到有“条款”的行(在这种情况下是第二行)并删除整行? text()filter() 有什么我不明白的地方吗?我知道我可以轻松删除第二行,但有时会是第二行,有时不会。

【问题讨论】:

    标签: jquery html-table row


    【解决方案1】:

    使用 jQuery:

    $(".profile-fields tr:contains('terms')").remove();​​​​
    

    see it in action

    没有 jQuery(如果速度是一个问题):

    var rows = document.getElementsByTagName("tr");
    for (var i = rows.length; i--;) {
      if(rows[i].innerHTML.indexOf("terms") !== -1) {
        rows[i].parentNode.removeChild( rows[i] );
      }
    }
    

    【讨论】:

      【解决方案2】:

      其实我想通了:

      $j(".profile-fields td:contains('terms')").parent().remove();

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-09-05
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多