Supongamos que hay una lista de opciones disponible, ¿cómo se actualiza <select>
con nuevos <option>
correos electrónicos?
jquery
html-select
Máscara
fuente
fuente
$('#selectId').selectpicker('refresh'); $('#selectId').selectpicker('render');
. De lo contrario, las nuevas opciones no serán visibles en su lista de selección.$el.append($('<option/>', { value: value, text: key }));
Lancé la excelente respuesta de CMS en una extensión rápida de jQuery:
Espera una matriz de objetos que contienen claves de "texto" y "valor". Entonces el uso es el siguiente:
fuente
donde comboBx es su ID de cuadro combinado.
o puede agregar opciones como cadena al innerHTML ya existente y luego asignar al innerHTML seleccionado.
Editar
Si necesita mantener la primera opción y eliminar todas las demás, puede usar
fuente
Por alguna extraña razón esta parte
de la solución CMS no funcionó para mí, así que en lugar de eso simplemente he usado esto
Y es funciona. Entonces mi código de trabajo ahora se ve así:
fuente
Eliminar y agregar elementos DOM es más lento que modificar uno existente.
Si sus conjuntos de opciones tienen la misma longitud, puede hacer algo como esto:
En caso de que su nuevo conjunto de opciones tenga una longitud diferente, puede eliminar / agregar opciones vacías que realmente necesite, utilizando alguna técnica descrita anteriormente.
fuente
Si, por ejemplo, su código html contiene este código:
Para cambiar la lista de opciones dentro de su selección, puede usar este código a continuación. cuando su nombre seleccione con nombre selectId .
En este ejemplo anterior, cambio la lista de opciones anterior por solo una nueva opción.
fuente
¿Esto ayuda?
fuente
La vieja escuela de hacer las cosas a mano siempre ha sido buena para mí.
Limpia la selección y deja la primera opción:
Si sus datos provienen de un Json o lo que sea (solo Concat los datos):
Mi Json Objetc:
Esta solución es ideal para trabajar con Ajax y responde en Json desde una base de datos.
fuente
Si actualizamos
<select>
constantemente y necesitamos guardar el valor anterior:fuente