J'utilise un attribut personnalisé dans des éléments avec ma propre classe. J'essaie de retourner la valeur de l'attribut personnalisé pour tous les éléments de la classe.
J'ai utilisé JQuery pour trouver les éléments par classe et JQuery place l'objet dans un tableau. p> maintenant que j'aurais les objets dans un tableau, je Voudrais renvoyer la valeur de l'attribut personnalisé pour tous les membres de la matrice. p> Comment cela peut-il être fait? p> p>
3 Réponses :
$('li.tab_item').data("foo"); // -> "some custom data"
Merci ... les deux sur le sommet ont travaillé $ ('li.tab_item'). Données ("FOO"); // ne renvoie qu'une entrée
@garym bien sûr, il fait. Vous êtes censé utiliser cela dans une boucle, comme mappe () code> ou
chacun () code>.
Ahh ... Je pensais que cela fonctionnait comme $ ('li.tab_item') .. Renvoyer un tableau. Dans la DOC JQuery, il mentionne ce fait pour ".attr ()". Merci encore ...
@garym tout dans jQuery qui retourne une valeur brise la chaîne. C'est vrai pour obtenir .text () code>,
.html () code>,
.attr ("xyz ') code> et similaire. Toutefois, si une méthode ne renvoie pas une valeur immédiate, similaire à la réglage
.attr ('xyz', "nouvelle valeur") code>, il renvoie les éléments précédemment appariés, c'est-à-dire un tableau précédent.
Il suffit d'ajouter, tab_attribs.toarray ()
@Hatim a raison, sans toarray () Vous obtiendrez une collection JQuery au lieu d'un tableau!
Utiliser qui vous donne un éventail de valeurs enveloppées dans un objet JQuery. Si vous voulez obtenir le tableau, appelez par le manière, vous pouvez également sélectionner les éléments par attribut au lieu de la classe: p> Ceci retournera tous les éléments de la page qui ont un attribut code> myAttribute CODE>. p> p> .map () code>:
.get () code>, c'est-à-dire
.map (...). Obtenez () p>
Votre meilleur ami: Jquery-Docs