2011-03-25 3 views
0

Pour une raison quelconque, jQuery ne me donne pas les attributs des objets dans le tableau lorsque je définis le nombre dans le tableau. Il retournera la classe du premier objet dans un tableau quand aucun en particulier n'est défini, cependant. Par exemple, cela fonctionne:Obtenir l'attribut des objets dans un tableau

$('#content').prepend($('div #left ol.group li',data).attr("class")); 

mais cela ne fait pas:

$('#content').prepend($('div #left ol.group li',data)[3].attr("class")); 

Quelqu'un peut-il me expliquer pourquoi cela ne fonctionne pas comme la plupart des autres fonctions faire et comment le faire fonctionner?

+0

où est le tableau? – Neal

Répondre

3

l'accès à un élément particulier d'un jQuery réglé en utilisant l'indexeur renvoie un objet DOM, qui ne présente pas la méthode .attr(). Vous voulez .eq(3), ce qui renvoie un objet jQuery enveloppant cet élément individuel.

4

avec jQuery obtenir l'index en utilisant eq

$('#content').prepend($('div #left ol.group li',data).eq(3).attr("class")); 
+1

Ce serait un +1 si vous lui dites * pourquoi * ainsi que quoi. :-) (Par exemple, parce que lorsque vous indexez dans l'objet jQuery, ce que vous obtenez est un élément DOM brut, pas un objet jQuery.) –

Questions connexes