2010-10-08 29 views
4

J'ai écrit un code comme celui-ci. <img id='test_img' src='../../..' />Comment obtenir l'ID de l'image en utilisant jQuery?

Je veux obtenir l'identifiant de cette image sur l'image comme charge,

$(img).load(function() { 
// Here I want to get image id i.e. test_img 
}); 

Pouvez-vous s'il vous plaît me aider?

Merci.

+1

this.id dans votre fonction de charge. –

+1

Tenez compte des conseils de @Andy E. Cela n'a aucun sens de créer un objet jQuery et d'appeler une méthode pour extraire une valeur de propriété qui est disponible pour vous via une référence directe au nom de la propriété. – user113716

Répondre

8
$(img).load(function() { 
    var id = $(this).attr("id"); 
    //etc 
}); 

bonne chance !!

modifier:

//suggested by the others (most efficient) 
    var id = this.id; 

    //or if you want to keep using the object 
    var $img = $(this); 
    var id = $img.attr("id") 
+0

Merci à tous. Je pense que vous avez tous raison. J'ai essayé toutes les réponses et tout a fonctionné. Merci à tous. – gautamlakum

1
$(img).load(function() { 
    alert($(this).attr('id')); 
}); 
8

Ne pas utiliser $(this).attr('id'), cela prend long, route inefficace. Juste this.id est nécessaire et il évite de re-enrouler l'élément avec jQuery et l'exécution de la fonction attr() (qui mappe à la propriété de toute façon!).

$(img).load(function() { 
    alert(this.id); 
}); 
3
$(function() { 
    $('img#test_img').bind('load', function() { 
     console.log(this.id); //console.log($(this).attr('id')); 
    }); 
});