jQuery:使用remove();对于行

时间:2012-11-11 19:51:46

标签: jquery removeclass

我需要使用<tr> 删除表类"form-table"中呈现页面中的多个remove();行。请参阅下面的注释标记

问题是还有其他几个表与类#34; form-table&#34;在呈现的页面(为清晰起见,下面未显示的其他表格)。其他每个表都有不同的<h3>标题。

是否可以定位下表中的最后两个<tr>行,而忽略具有相同类form-table的其他表?这两个<tr>是否可以使用此表的<h3>Name</h3>标题进行定位?

即:

 jQuery(document).ready(function( $ ){
    $("*target <tr>'s here*").remove();

  });

呈现标记:

<h3>Name</h3>

<table class="form-table">
    <tr>
        <th><label for="user_login">Username</label></th>
        <td><input type="text" name="user_login" id="user_login" value="subscriber" disabled="disabled" class="regular-text" /> <span class="description">Usernames cannot be changed.</span></td>
    </tr>

<tr>
    <th><label for="first_name">First Name</label></th>
    <td><input type="text" name="first_name" id="first_name" value="subscriber" class="regular-text" /></td>
</tr>

<tr>
    <th><label for="last_name">Last Name</label></th>
    <td><input type="text" name="last_name" id="last_name" value="" class="regular-text" /></td>
</tr>

<!-- Need to display:none or remove the two <tr>'s below: -->

<tr>
    <th><label for="nickname">Nickname <span class="description">(required)</span></label></th>
    <td><input type="text" name="nickname" id="nickname" value="subscriber" class="regular-text" /></td>
</tr>

<tr>
    <th><label for="display_name">Display name publicly as</label></th>
    <td>
        <select name="display_name" id="display_name">
                    <option  selected='selected'>subscriber</option>
                </select>
    </td>
</tr>

<!-- Need to display:none or remove the two <tr>'s above: -->

</table>

3 个答案:

答案 0 :(得分:2)

怎么样:

$('h3:contains("Name") + table tr:gt(2)')

或者

$('h3:contains("Name")').next().find('tr:gt(2)')

编辑:

演示:http://jsfiddle.net/kMYY3/1/

答案 1 :(得分:1)

您可以使用:firstnth-child()函数来定位特定的表格,然后您可以使用gt()函数来定位所有大于2的TR。

示例1:

// assuming that your target table is the first one among the other tables with the same class
var myTable = $("h3 :first").next(".form-table").find("tr:gt(2)").remove()

示例2:

// assuming that your target table's h3 has the text "Name" inside

var myTable = $("h3:contains('Name')").next(".form-table").find("tr:gt(2)").remove()

答案 2 :(得分:0)

怎么样:

$('.form-table tr:gt(2)');  //note the index is 0 based

jQuery gt selector