Y at-il un bogue dans la façon dont jQuery gère les sélecteurs enfants ou est-ce que je rate quelque chose d'évident? Je ne peux pas le faire fonctionner quand l'enfant est autre que *
.Est-ce un bug dans la façon dont jQuery traite les sélecteurs enfants?
Voici le sélecteur jQuery je courais:
$("#myTable > tr").each(function() {
// do somthing }
);
Et la structure de la table est:
<table id="myTable">
<tr>
<td><button>someButton</button></td>
<td><textarea>...</textarea></td>
</tr>
</table>
Aucun élément ne correspondent au dessus de #myTable > tr
. Mais les deux sélecteurs énumérés ci-dessous fonctionnent bien.
$("#myTable tr") // search all descendants for tr
ou utiliser un caractère générique pour correspondre les enfants:
$("#myTable > *") // search all child elements
Toutes les idées sur ce qui pourrait être mal ici?
Merci pour les réponses rapides les gars! Malheureusement, ne peut en sélectionner un.
Merci Andy. Je n'étais pas au courant que les navigateurs ajoutent implicitement l'élément 'tbody'. En fait, j'utilise toujours l'inspecteur DOM lors du débogage de telles erreurs, et l'élément 'tbody' a été renseigné là tout le temps, mais de toute façon je ne l'ai pas vu :) – Anurag