Ich habe eine Tabellenstruktur wie diese:
<table1>
<tbody>
<tr>
<td></td>
...
<td>
<table2>
<tbody>
<tr>
<td></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
In Javascript, habe ich eine Variable tbl
mit dem Wert $(table1)
, und dann will ich alle Elemente direkt Kind bekommen (tr) von <tbody>
den table1
. Mein Code lautet:
$('tr', tb1)
Anscheinend werden alle <tr>
Elemente in Tabelle1 und Tabelle2 zurückgegeben. Ich denke, ich kann durchkommen
$('tr', tb1).not(function(){return $(this).parent().parent()[0] != tb1;})
oder diese Art von Logik.
Ich weiß, $('table1 > tbody > tr')
kann das direkte Kind bekommen tr
. Leider kann ich das nicht benutzen.
Hat jemand eine gute Idee dazu?
Vielen Dank.
jquery
parent-child
Jason Li
quelle
quelle
>
) verwenden können, ohne etwas davor anzugeben. Danke dir.Wie @ jave.web in den Kommentaren erwähnt
Um die direkten untergeordneten Elemente eines Elements zu durchsuchen, verwenden Sie
.children()
. Es wird nur die direkten Kinder durchsuchen und nicht tiefer durchqueren. http://api.jquery.com/children/quelle
Dies ist genau der Grund, warum man mit Verschachtelungstabellen vorsichtig sein sollte. Ich hoffe wirklich, dass Sie sie für Daten und nicht für das Seitenlayout verwenden.
Ein weiteres Problem, das Ihren Tag wahrscheinlich ruinieren wird, ist die Verwendung von CSS-Selektoren für verschachtelte Tabellen. Sie haben im Grunde das gleiche Problem: Sie können keine TR-Elemente der äußeren Tabelle auswählen, ohne auch die Elemente innerhalb der inneren Tabelle auszuwählen. (Sie können den untergeordneten Selektor nicht verwenden, da er nicht in IE6 implementiert ist.)
Das sollte funktionieren:
Ich empfehle jedoch, das TBODY-Element fest zu codieren, da Sie sich nicht darauf verlassen sollten, dass der Browser es für Sie erstellt.
quelle
http://api.jquery.com/child-selector/
$('tb1 > tr')
quelle
tb1
ein HTML-Tag wäre, was es nicht ist; und wenntr
es ein direktes Kind davon wäre (was es nicht ist, ist es ein direktes Kind davon<tbody>
).Wenn Sie IDs beider Elemente haben und direktes Element suchen möchten, verwenden Sie den folgenden Code
Wenn Sie eine verschachtelte Suche wünschen, können Sie find verwenden. Es wird hier ausführlich erklärt. https://handyopinion.com/jquery-selector-find-nested-child-elements/
quelle