2009-08-19 11 views
0

Ich habe die folgende wiederholendes Muster von Tabellen und TastenVerfahrgeschwindigkeit dom in jquery vorherigen Instanz der Klasse finden

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

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

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

jetzt, wenn ich Taste 1,2,3 i Tabelle zu durchqueren wollen, klicken Sie auf 1,2,3 (die vorhergehende Tabelle) und eine zusätzliche Zeile der Tabelle anzeigen (bereits erstellt, nur ausgeblendet), habe ich dies versucht, aber alle Schaltflächen wirken sich nur auf die erste Tabelle aus und sobald alle diese Zeilen angezeigt sind, wird sie in der nächsten Tabelle angezeigt etc etc, ich weiß, die Antwort ist wahrscheinlich offensichtlich .. heres mein Code:

Antwort

1

Versuchen Sie folgendes:

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

Ok ich es beheben verwaltet:

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

Annahme: der Index der Schaltfläche in der Reihe von Tasten entspricht den Index der Tabellenzeile in dem Satz von Tabellenzeilen .

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