Discussione:
jquery, come recuperare l'id di un elemento $(this)?
(troppo vecchio per rispondere)
l***@email.it
2010-04-16 06:11:27 UTC
Permalink
tramite jquery creo un array di tutti i div cui è stata assegnata una
certa classe, diciamo la classe .box:

var boxes = $("div.box");

tutto bene, nessun problema.

adesso, scorrendo l'array boxes vorrei sapere qual è l'id di ciascun
elemento.

sono sicuro che tutti i div cui è assegnata la classe .box hanno un
id, ad esempio:

<div id="gino" class="box">blabla</div>
<div id="pino" class="box">ciaociao</div>
<div id="nino" class="box">cuc&ugrave;</div>

ma non so quale possa essere questo id. quello che vorrei è
recuperare gli id dentro un ciclo tipo:

boxes.each(function() {
alert("sto lavorando sul box di id: " + $this.ID);
}

con .ID non funziona. che ci devo mettere?
Cristiano Larghi
2010-04-16 06:41:30 UTC
Permalink
Post by l***@email.it
tramite jquery creo un array di tutti i div cui è stata assegnata una
var boxes = $("div.box");
tutto bene, nessun problema.
adesso, scorrendo l'array boxes vorrei sapere qual è l'id di ciascun
elemento.
boxes.each(function() {
alert("sto lavorando sul box di id: " + $this.ID);
}
con .ID non funziona. che ci devo mettere?
Premesso che non conosco jquery, leggendo la documentazione:
http://api.jquery.com/each/
Non è $(this).id ?
Magilla
2010-04-16 07:10:57 UTC
Permalink
Post by l***@email.it
con .ID non funziona. che ci devo mettere?
è un attributo,

$(this).attr('id')
o giù di li
l***@email.it
2010-04-16 08:27:37 UTC
Permalink
Post by Magilla
$(this).attr('id')
o giù di li
proprio quello grazie.
Oreste
2010-04-16 09:28:08 UTC
Permalink
Post by l***@email.it
boxes.each(function() {
   alert("sto lavorando sul box di id: " + $this.ID);
}
con .ID non funziona.  che ci devo mettere?
La differenza è che $(this)è un oggetto jquery che restituisce un
array, mentre this è una funzione javascript quindi $(this).attr('id')
è uguale a this.id, io uso spesso quest'ultimo perché è più corto
Loading...