如何删除父tr

osh*_*nen 11 jquery jquery-selectors

更新1:

我想知道它是否与要删除的元素内的按钮有关,所以最终会删除删除的按钮呢?这可能不是问题,我只是打字我正在思考.

我刚尝试过:

$( "input.btnX" ).click(function(event) {
    alert("test");
});
Run Code Online (Sandbox Code Playgroud)

我没有得到警报......我应该使用live还是on现在,因为按钮和表格是动态生成的.

原始问题:

我有一个表(动态生成,所以我不知道它在tbody中有多少tr看起来像这样:

<table>
    <tbody>
        <tr>
            <td>col1</td>
            <td>col2</td>
            <td><input type="button" class="btnX" name="x" value="x" /></td>
        </tr>
        <tr>
            <td>col1</td>
            <td>col2</td>
            <td><input type="button" class="btnX" name="x" value="x" /></td>
        </tr>
    </tbody>
</table>
Run Code Online (Sandbox Code Playgroud)

如果单击x按钮,如何删除父tr?因此,在此示例中,如果单击底部x,则应删除底部tr.

我试过这个:

$( "input.btnX" ).click(function(event) {
    $(this).parent('tr').remove();
});
Run Code Online (Sandbox Code Playgroud)

但没有任何反应.

Dom*_*een 33

只是用

    $( "input.btnX" ).click(function(event) {
    $(this).parent().parent().remove();
});
Run Code Online (Sandbox Code Playgroud)

要么

  $( "input.btnX" ).click(function(event) {
        $(this).closest("tr").remove();
    });
Run Code Online (Sandbox Code Playgroud)

正如你正在做的那样是去tr的父母,然后寻找一个tr

在这里查看示例http://jsfiddle.net/gYDUF/

如果您的表格是通过javascript呈现的,您可能还需要更改您的点击次数

$("input.btnX" ).live(click, function(){

     $(this).closest("tr").remove();
}); 
Run Code Online (Sandbox Code Playgroud)