Quelle est la meilleure façon d'ajouter des options à une sélection en tant qu'objet JavaScript avec jQuery?
Darryl Hein:
Quelle est la meilleure méthode pour ajouter des options à un <select>
objet JavaScript à l'aide de jQuery?
Je recherche quelque chose pour lequel je n'ai pas besoin de plugin, mais je serais également intéressé par les plugins qui existent.
C'est ce que j'ai fait:
selectValues = { "1": "test 1", "2": "test 2" };
for (key in selectValues) {
if (typeof (selectValues[key] == 'string') {
$('#mySelect').append('<option value="' + key + '">' + selectValues[key] + '</option>');
}
}
Une solution propre / simple:
Ceci est une version nettoyée et simplifiée de matdumsa :
$.each(selectValues, function(key, value) {
$('#mySelect')
.append($('<option>', { value : key })
.text(value));
});
Changements par rapport à matdumsa: (1) a supprimé la balise de fermeture pour l'option dans append () et (2) a déplacé les propriétés / attributs dans une carte en tant que deuxième paramètre de append ().
matdumsa:
Identique aux autres réponses, de manière jQuery:
$.each(selectValues, function(key, value) {
$('#mySelect')
.append($("<option></option>")
.attr("value", key)
.text(value));
});