¿Cuál es el mejor método para agregar opciones a un <select>
objeto JavaScript usando jQuery?
Estoy buscando algo para lo que no necesito un complemento, pero también me interesarían los complementos que están disponibles.
Esto es lo que hice:
selectValues = { "1": "test 1", "2": "test 2" };
for (key in selectValues) {
if (typeof (selectValues[key] == 'string') {
$('#mySelect').append('<option value="' + key + '">' + selectValues[key] + '</option>');
}
}
Una solución limpia / simple:
Esta es una versión limpia y simplificada de matdumsa :
$.each(selectValues, function(key, value) {
$('#mySelect')
.append($('<option>', { value : key })
.text(value));
});
Cambios de matdumsa: (1) eliminó la etiqueta de cierre para la opción dentro de append () y (2) movió las propiedades / atributos a un mapa como el segundo parámetro de append ().
value
es una cadena (y está codificada) que no necesita ser citada.