0

我有下面的代码,它可以工作,但什么是正确的方法来获取表 onclick 的 add

HTML

<div> 
    <h4 class="titlebar">
        Skills
        <small><a onclick="return false;" href="/add/" data-span="3">Add</a></small>
    </h4>

    <div class="body">
        <table class="table">
            <tbody>
                <tr><td width="125"></td></tr>
            </tbody>
        </table>
    </div>
</div>

jQuery

var TableBlock = $(this).closest('.titlebar').next().children('table');

this指向添加链接

4

1 回答 1

3

你没有提到谁是父母,谁<div class="body"><h4 class="titlebar">关键的。

$(this).closest('table-parent(the missing parent)').find('table');

find更好,childern因为即使表格在未来的开发中嵌套,它也会起作用。

如果您只想要第一个匹配的表:

.find('table').first();
//Or
.find('table:first');

更新: 根据您的问题更新,我会向父级添加div一个类或一个id

<div class="parent" >
    <h4 class="titlebar">
    ...

然后:

$(this).closest('div.parent').find('table');

如果您无法更改 DOM:

$(this).closest('h4.titlebar').parent().find('table');

或者:

$(this).closest('h4.titlebar').siblings('.body').find('table');
于 2012-06-06T10:38:02.423 回答