Question

Les étiquettes ont un attribut 'pour' qui leur permet de pointer vers un certain champ de saisie. Je dois changer la valeur de cet attribut avec JQuery pour pouvoir utiliser:

$("label").attr("for", "targetName");

Mais je dois aussi définir le className, donc je préférerais utiliser:

$("label").attr({
    for: "targetName",
    className: "something" 
});

Vous avez peut-être déjà remarqué le problème, car c’est bien sûr un mot-clé en javascript. Est-ce que quelqu'un sait comment je pourrais résoudre ce problème? Actuellement, j'utilise la première méthode pour définir le for et la seconde pour définir plusieurs autres attributs. Cela fonctionne mais ce n'est pas vraiment joli.

Toute aide serait grandement appréciée.

Était-ce utile?

La solution

vous pouvez également utiliser htmlFor au lieu de pour:

$("label").attr({
    htmlFor: "targetName",
    className: "something" 
});

Autres conseils

Avez-vous essayé d'utiliser des clés de chaîne:

$("label").attr({
  'for': "targetName",
  'className': "something"
});

?

Essayez quelque chose comme:

$("label").attr("for", "targetName").attr("class", "something")

OU

$("label").attr("for", "targetName").addClass("something")

OU

$("label").attr({ "for": "targetName", className: "something" });

Cela devrait fonctionner,

$("label").attr("for","targetName").attr("class","something");
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top