2010-02-09 12 views
8

Ich habe ein div mit Klasse. Zum BeispielZugriff auf ein Div mit Klasse mit jquery

<div class="button check"></div> .Das CSS ist für beide "Taste", "überprüfen" definiert. Ich möchte die oben div durch jquery zuzugreifen und etwas schreiben in der Div.I versucht, mit

$('.button check').html("sample data"); 

Ich sehe nichts geschrieben wird, wenn ich die Seite auszuführen.

Bitte helfen Sie mir.

+0

Es ist Standard, Attribute mit kleinen Buchstaben zu schreiben, d. H. "Klasse", nicht "Klasse". Was ich auch vermisse ist, dass du zwei Klassen erstellst: 'button' und 'check'. – pthulin

Antwort

14

Kette einfach die CSS-Klassen zusammen, die durch Punkte getrennt:

$('.button.check').html("sample data"); 

Sie werden auch eine bessere Leistung in einigen Browsern, durch Angabe der Tag-Namen als auch sehen:

$('div.button.check').html("sample data"); 

aktualisieren : Nachdem ich Brian's answer gelesen habe, habe ich die ursprüngliche Frage noch einmal gelesen. Ich habe festgestellt, dass Sie unter dem Eindruck stehen, dass Sie beide verwenden müssen, um die div zu referenzieren. Wenn Sie hatte:

<div class="button cancel">Cancel</div> 
<div class="button check">Check</div> 

Dann Verkettungs Selektoren (das heißt .button.cancel) würde Sinn machen. wenn es jedoch die einzige div auf der Seite oder Sie wollten die alle divs mit button Klasse, die Sie nicht beide Klassen müssen:

<div class="button check">Check</div> 

Dies würde es wählen fein:

$('div.check').html("sample data"); 
+1

+1, zu schnell für mich .., und Sie können auch '$ ('. Check.button')' die Reihenfolge der Klassen ist nicht wichtig .. (* als eine Anmerkung zum OP *) –

+0

@Gaby ... haha, ich fühle mich immer glücklich, wenn das passiert ... Ich bin sicher, dass Sie mich auf eine andere Frage bringen werden :) –

+0

Darüber hinaus führen ID-Routing-Selektoren immer schneller. $ ("# header.button.check") zum Beispiel. – BBonifield

2

Can du zielst nur auf eine Klasse, brauchst du beides? Sie können eine Klasse wie tun: Für mehrere Klassen

$("div.button") 

ODER

$(".button") 

, könnte es sein:

$(".button, .check") 

OR:

$(".button").add(".check") 

HTH.

+0

@Brian +1 für die Tiefe des Verständnisses! Ich habe die Möglichkeit total vermisst, dass das OP dachte, dass beide Klassen notwendig waren. Eine schöne Antwort, obwohl die letzten beiden Beispiele angesichts des Zusammenhangs eines einzelnen Elements, das vom OP vorgestellt wird, etwas verwirrend sind. –

+0

Wahr, guter Punkt. –

Verwandte Themen