在jquery中遍历dom找到上一个类的实例

时间:2009-08-19 09:01:08

标签: javascript jquery dom

我有以下重复的表格和按钮模式

----------------------
table 1 .inventory class
----------------------
[button 1 .add-row]

----------------------
table 2 .inventory class
----------------------
[button 2 .add-row]

----------------------
table 3 .inventory class
----------------------
[button 3 .add-row]

现在当我点击按钮1,2,3我想分别遍历表1,2,3(上一张表)并在表格中显示一个额外的行(已经创建,只是隐藏),我尝试了这个但是所有按钮只影响第一个表格,一旦显示所有这些行,然后开始显示在下一个表格等等,我知道答案可能很明显..继承我的代码:

$(document).ready(function(){
    $('.additional-item-row').hide();
    $('.add-item').click(function(){
        $(this).prevAll(".inventory .additional-item-row:hidden:first").show();
    });
});

3 个答案:

答案 0 :(得分:1)

试试这个:

$(document).ready(function(){
    $('.additional-item-row').hide();
    $('.add-item').click(function(){
        $(this).prev("table").children(".inventory .additional-item-row:hidden:first").show();
    });
});

答案 1 :(得分:1)

好的,我设法解决了这个问题:

$(this).prevAll(".inventory:first").find(".additional-item-row:hidden:first").show();

答案 2 :(得分:1)

假设:按钮组中按钮的索引与表行集中的表行索引相匹配。

$(function() {
    $("button.add-item").click(function() {
        var index = $("button.add-item").index(this);
        $("tr.additional-item-row:eq(" + index + ")").show();
    });
});