La méthode Element.hasAttribute() renvoie une valeur booléenne indiquant si l'élément courant possède l'attribut spécifié ou non.

Syntaxe

var result = element.hasAttribute(name);
result
récupère la valeur de retour true ou false.
name
est une chaine de caractères représentant le nom de l'attribut.

Exemple

var foo = document.getElementById("foo"); 
if (foo.hasAttribute("bar")) { 
    // faire quelque chose
}

Polyfill

;(function(prototype) {
    prototype.hasAttribute = prototype.hasAttribute || function(name) {
        return !!(this.attributes[name] && 
                  this.attributes[name].specified);
    }
})(Element.prototype);

Notes

Méthodes DOM traitant des attributs sur les éléments :

DOM Level 1 (le plus courant) DOM Level 2 DOM Level 1 traitant directement les nœuds Attr DOM Level 2 traitant directement les nœuds Attr
setAttribute (DOM 1) setAttributeNS setAttributeNode setAttributeNodeNS
getAttribute (DOM 1) getAttributeNS getAttributeNode getAttributeNodeNS
hasAttribute (DOM 2) hasAttributeNS - -
removeAttribute (DOM 1) removeAttributeNS removeAttributeNode -

Spécification

Spécification Statut Commentaire
DOM
La définition de 'Element.hasAttribute()' dans cette spécification.
Standard évolutif Dans Document Object Model (DOM) Level 3 Core Specification, déplacé de Node à Element
Document Object Model (DOM) Level 3 Core Specification
La définition de 'Element.hasAttribute()' dans cette spécification.
Obsolete Pas de changement par rapport à Document Object Model (DOM) Level 2 Core Specification
Document Object Model (DOM) Level 2 Core Specification
La définition de 'Element.hasAttribute()' dans cette spécification.
Obsolete Définition initiale.

Browser compatibility

Nous convertissons les données de compatibilité dans un format JSON. Ce tableau de compatibilité utilise encore l'ancien format car nous n'avons pas encore converti les données qu'il contient. Vous pouvez nous aider en contribuant !

Fonctionnalité Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Oui) (Oui) (Oui) 8.0 (Oui) (Oui)
Fonctionnalité Android Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Oui) (Oui) (Oui) (Oui) (Oui) (Oui)

Étiquettes et contributeurs liés au document

Étiquettes : 
 Contributeurs à cette page : loella16, fscholz, teoli, khalid32, Mgjbot, BenoitL, Celelibi
 Dernière mise à jour par : loella16,