Je semble avoir des problèmes avec mon code. J'ai besoin de dire:
if ( $('html').attr('lang').val() == 'fr-FR' ) {
// do this
} else {
// do that
}
Lorsque je vérifie la console, j'obtiens une erreur en me disant que ce n'est pas une fonction. L'aide serait appréciée.
Merci,
Retirez juste le .val (). Comme:
if ( $('html').attr('lang') == 'fr-FR' ) {
// do this
} else {
// do that
}
la méthode attr
de jQuery renvoie la valeur de l'attribut:
La méthode
.attr()
obtient la valeur d'attribut uniquement pour le premier élément de l'ensemble mis en correspondance. Pour obtenir la valeur de chaque élément individuellement, utilisez une construction en boucle telle que la méthode.each()
ou.map()
de jQuery.
Tout ce dont tu as besoin c'est:
$('html').attr('lang') == 'fr-FR'
Cependant, vous pourriez vouloir faire une correspondance insensible à la casse:
$('html').attr('lang').toLowerCase() === 'fr-fr'
la méthode val
de jQuery renvoie la valeur d'un élément de formulaire.
La méthode
.val()
est principalement utilisée pour obtenir les valeurs d'éléments de formulaire tels queinput
,select
ettextarea
. Dans le cas d'éléments<select multiple="multiple">
, La méthode.val()
renvoie un tableau contenant chaque option sélectionnée. si aucune option n'est sélectionnée, il retournenull
.