1

我有一个表,其中包含另一个我想用 jQuery 删除的表。该表位于原始表的其中一行中,我实际上想删除该行。原始表是一个名为 table 的 jQuery 对象。

<table>
<tbody>
    <tr>
        <td></td>
        <td></td>
        <td></td>
    </tr>
    <tr>
        <td></td>
        <td></td>
        <td></td>
    </tr>
    <tr>
        <td colspan="3">
            <table>
                <tbody>
                    <tr>
                        <td></td>
                        <td></td>   
                    </tr>
                    <tr>
                        <td></td>
                        <td></td>      
                    </tr>
                </tbody>
            </table>
        </td>
    </tr>
</tbody></table>

我尝试了不同的方法,例如以下 4 个示例,但没有任何成功:

if ($(table).is('tr')){
    if (('tr').(':has(table)') $('tr').remove(); 
}

if ($(table, 'tr').has('table')) {
    $(table).find('table').remove();
};

if ($(table, 'tr').has('table')) {
    $('tr').remove();
};

$(table, 'tr').siblings().children('table').remove();

我不确定我是在正确的轨道上还是在完全错误的树上吠叫!!

任何建议将不胜感激。

4

4 回答 4

0

这就是我想出的

​$('table').find('table').parents('tr').remove()​​​;

jsFiddle

于 2012-12-16T13:59:36.297 回答
0

在创建行时给它一个 ID,这将使以后更容易删除它,并使 DOM 搜索更有效

于 2012-12-16T14:28:20.740 回答
0

这是经过测试并且工作正常:

http://jsfiddle.net/2JfhA/

$('table').find('table').closest('tr').remove();

这是在做什么:在里面然后first get the first table里面有这张桌子。then find and child tableremove the closest tr

结帐小提琴。

于 2012-12-16T14:56:22.550 回答
-1

这已经足够了

$(table).find('table').parents("tr").eq(0).remove();

您不需要任何“如果”,因为如果没有嵌套表,则无需删除任何内容。

于 2012-12-16T13:58:02.287 回答