JQuery) se alla klasser från alla tag med console.log

Permalänk

JQuery) se alla klasser från alla tag med console.log

Jag har en JQuery kod

var southAmericaTD = $('table tr.first td img.southAmerica').parent();// img är <td>s child var southAmericaTDClass=southAmericaTD.attr('class');

När jag gör console.log southAmericaTDClass

console.log('class :'+southAmericaTDClass);

Finns två img som har klass southAmerica och därför JQuery måste hämta två <td> och jag måste få alla klasser från både td.
Jag ser bara sista klass som JQuery har hämtat från DOM element
Hur man fixar det?

Permalänk
Medlem

.parent() verkar bara plocka ut en förälder. Du kan använda detta istället

$('table tr.first td').has('img.southAmerica')

Visa signatur

Kom-pa-TI-bilitet

Permalänk
Medlem

Förstår inte riktigt vad du är ute efter. Du menar att td's har olika klasser och du vill få en komplett lista på dem?

// :first är bättre än att ha en klass som heter first var southAmericaTDClass; //Loopa varje element $("table tr:first img.southAmerica").each(function() { //För varje element lägg till klasserna de har med mellanrum southAmericaTDClass += $(this).parent().attr("class") + " "; }); //ta bort trailing spaces southAmericaTDClass = southAmericaTDClass.trim(); console.log("classes: " + southAmericaTDClass);

Tror de gör det du vill

--

Skrivet av Teknocide:

.parent() verkar bara plocka ut en förälder. Du kan använda detta istället

$('table tr.first td').has('img.southAmerica')

Problemet är dock att .attr också bara tar första elementet. Han vill targeta flera samt lista klasserna för dem (tror jag?).

Permalänk
Medlem
Skrivet av Rupenbritz:

Problemet är dock att .attr också bara tar första elementet. Han vill targeta flera samt lista klasserna för dem (tror jag?).

Det stämmer! Något sånt här då kanske

http://plnkr.co/edit/uLfsuLg849OekCFVNNuu?p=preview

Visa signatur

Kom-pa-TI-bilitet