2013-06-25 13 views
6

Ich habe mehrere erweitern/reduzieren Boxen auf einer einzigen Seite von PHP/MySQL generiert.Expanding/Collapsing divs

Problem ist, wenn ich auf einen Link klicke, um ein Feld zu erweitern, es alle Felder erweitert.

Ich dachte über das Anhängen der Post-ID am Ende der Klasse (<div class="postreplycontainer-POST_ID">), aber ich bin mir nicht sicher, ob das funktioniert, da ich eine Möglichkeit finden würde, die jQuery zu ändern.

Hier ist ein funktionierendes Beispiel: http://jsfiddle.net/Draven/kUhkP/35/

Denken Sie daran, ich kann nicht manuell Code in jeder Box, weil ich den Inhalt aus der Datenbank bin ziehen.

EDIT: Vielleicht kann jemand mir mit einem zusätzlichen Problem helfen.

Ich möchte die textarea Box konzentrieren, wenn ich die <div> erweitern. Ich habe versucht, den gleichen Trick wie zuvor (mit , aber das hat nicht funktioniert).

Hier ist das Beispiel: http://jsfiddle.net/Draven/kUhkP/53/

Dieses Beispiel wird immer die erste <textarea> konzentrieren.

+1

Vielen Dank an alle, die geantwortet haben! Sie alle arbeiteten, aber ich wählte die Antwort, die sich nicht auf irgendeine Tabelle verließ, die dem div folgte. – Draven

Antwort

9

Hier ist die FIDDLE

$("a.postreply").click(function() { 
    $(this).closest('.blog-container') 
     .find('.postreplycontainer').slideToggle("fast"); 
}); 
div
0

Wenn Sie rufen $("div.postreplycontainer") Sie alle divs zugreifen, wenn das div immer nach einer Tabelle können Sie mit

$("a.postreply").click(function() { 
    $(this).parents('table').next().slideToggle("fast"); 
}); 

schieben, dass http://jsfiddle.net/kUhkP/39/

0

Ich denke, das sollte für Ihr Problem in Ordnung sein.

$("a.postreply").click(function() { 
    $(this).closest('.blog-table').next().slideToggle("fast"); 
});