¿Cómo obtener múltiples valores de selección de cuadro usando jquery?¿Cómo obtener múltiples valores de selección de cuadro usando jquery?
Respuesta
var foo = $('#multiple').val();
Es curioso mirar atrás en estas viejas preguntas y ver la respuesta incorrecta tantas veces. Claramente esto no está obteniendo los 'valores' como el OP estaba pidiendo como la respuesta 'correcta' a continuación. – Tomas
IDEs como PyCharm ahora están retomando el uso de este modo, mostrando advertencias tales como 'Inefficient JQuery Usage', que es lo que me llevó a desplazarme más allá de esta respuesta. : o) –
No es necesario volver a crear un objeto JQuery dentro de la función, eso no tiene sentido porque puede usar javascript puro. Simplemente haga 'foo [i] = selected.value;' –
Uso de la función .val()
en una lista de selección múltiple devolverá una matriz de los valores seleccionados:
var selectedValues = $('#multipleSelect').val();
y en su html:
<select id="multipleSelect" multiple="multiple">
<option value="1">Text 1</option>
<option value="2">Text 2</option>
<option value="3">Text 3</option>
</select>
lo que si quieres conseguir '1' texto en lugar del valor? reemplace '.val()' con '.text()'? –
Merece la pena señalar que una selección múltiple con nada seleccionado devuelve 'null' en lugar de una matriz vacía. Esto significa que si programáticamente ingresas un valor seleccionado, tienes que hacer un poco de malabarismo para hacerlo bien. – Leo
¡Gracias! Hay tantas maneras de obtener un valor de un elemento con jQuery que es inevitablemente difícil encontrar la manera que está buscando. –
También puede usar la función de mapa js:
$("#multipleSelect :selected").map(function(i, el) {
return $(el).val();
});
Y entonces se puede obtener cualquier propiedad del elemento option
:
return $(el).text();
return $(el).data("mydata");
return $(el).prop("disabled");
etc...
excelente respuesta, pero no es necesario pagar el gasto extra de envolver 'el' como un objeto jQuery para cada opción. Simplemente vete directamente del DOM cuando no sea demasiado extraño. Puedes cambiar '$ (el) .val()' a solo 'el.value'. Por supuesto, si está acostumbrado a jQuery o desea obtener datos o atributos como los otros ejemplos, jQuery no está perjudicando a nadie. – KyleMit
@KyleMit Un gran consejo. Solo utilicé este enfoque para obtener una colección de valores de campo ocultos y funcionó perfectamente. – EvilDr
var selected=[];
$('#multipleSelect :selected').each(function(){
selected[$(this).val()]=$(this).text();
});
console.log(selected);
Sin embargo, otro approch a este problema. La matriz seleccionada tendrá los índices como los valores de la opción y cada elemento de la matriz tendrá el texto como su valor.
por ejemplo
<select id="multipleSelect" multiple="multiple">
<option value="abc">Text 1</option>
<option value="def">Text 2</option>
<option value="ghi">Text 3</option>
</select>
si la opción 1 y 2 decir que se seleccionan.
la matriz seleccionada será:
selected['abc']=1;
selected['def']=2.
código HTML:
<select id="multiple" multiple="multiple" name="multiple">
<option value=""> -- Select -- </option>
<option value="1">Opt1</option>
<option value="2">Opt2</option>
<option value="3">Opt3</option>
<option value="4">Opt4</option>
<option value="5">Opt5</option>
</select>
Código jQuery:
$('#multiple :selected').each(function(i, sel){
alert($(sel).val());
});
esperar que funcione
No espere que funcione, si no está seguro de si es la respuesta, pruébelo y ¡asegúrese! –
¡Si no está seguro de la respuesta, entonces no la publique ...! no estamos aquí por las esperanzas .. !! LOL –
Hola, hombre. Funciona perfectamente Echale un vistazo. Deberías esperarlo. No dé un comentario irrelevante. – Prabhagaran
obtener los valores seleccionados en el separador de coma
var Accessids = "";
$(".multi_select .btn-group>ul>li input:checked").each(function(i,obj)
{
Accessids=Accessids+$(obj).val()+",";
});
Accessids = Accessids.substring(0,Accessids.length - 1);
console.log(Accessids);
sólo tiene que utilizar este
$('#multipleSelect').change(function() {
var selectedValues = $(this).val();
});
- 1. Obtener una matriz de valores de múltiples entradas usando jQuery
- 2. ¿Cómo obtener múltiples valores seleccionados del cuadro de selección en JSP?
- 3. jQuery refrescar cuadro de selección
- 4. Selección Cuadro de selección con jQuery
- 5. jQuery validar cuadro de selección
- 6. Validar cuadro de selección
- 7. JQuery Mobile: ¿Cómo volver a procesar el cuadro de selección?
- 8. jQuery UI múltiples de selección de arrastre
- 9. jQuery Obtener última de la clase de valores múltiples
- 10. Escribir cuadro de selección
- 11. rieles etiqueta de selección con valores múltiples pre seleccionados
- 12. Usando jQuery, ¿cómo puedo establecer dinámicamente el atributo de tamaño de un cuadro de selección?
- 13. ¿Cómo establecer el valor predeterminado de un cuadro de selección usando JQuery en IE9?
- 14. ¿Cómo crear un cuadro de selección agrupada usando simple_form?
- 15. jQuery - seleccione la opción en el cuadro de selección
- 16. selector de atributo jQuery para valores múltiples
- 17. Convertir la lista de selección a JSON usando jQuery
- 18. Cómo preseleccionar la opción en el cuadro de selección usando jQuery
- 19. Cómo comprobar si un cuadro de selección está vacío usando JQuery/Javascript
- 20. Selección de cuadro/rectángulo en Google Maps
- 21. Selección de valores múltiples de la lista desplegable
- 22. Obtener valores de atributos como matriz a partir de la selección de elementos con jQuery
- 23. Cambiar el valor del cuadro de selección de Chosen.js usando jQuery
- 24. Obtener el texto seleccionado de un cuadro combinado usando jQuery, por nombre del cuadro combinado?
- 25. Cómo publicar las selecciones de un cuadro de lista HTML con múltiples valores seleccionados
- 26. usando jQuery UI - ajuste de ancho en un cuadro de selección múltiple en particular
- 27. ¿Cómo obtener el número de opciones seleccionadas usando jquery?
- 28. ¿Cómo obtener el texto de la opción seleccionada de una selección usando jquery?
- 29. ¿Cómo contar el número de etiquetas de opción usando jQuery?
- 30. ¿Cómo recupero un valor de cuadro de texto usando JQuery?
podría desear fijar un cierto código de las cosas que ha intentado que no funcionaron –