¿Cómo puedo obtener el valor de una casilla de verificación en jQuery?
535
Para obtener el valor del atributo Value, puede hacer algo como esto:
$("input[type='checkbox']").val();
O si ha configurado un class
o id
para ello, puede:
$('#check_id').val();
$('.check_class').val();
Sin embargo, esto devolverá el mismo valor si está marcado o no, esto puede ser confuso ya que es diferente al comportamiento del formulario enviado.
Para verificar si está marcado o no, haga lo siguiente:
if ($('#check_id').is(":checked"))
{
// it is checked
}
$("input:checkbox")
. Además, parece haber un error tipográfico en el selector de clase ...$($0).val()
en Chrome y desactivo la casilla de verificación, la respuesta está "activada" aunque no esté marcada. Pero$($0).is(":checked")
devuelve el valor correcto.[type="checkbox"]
tiene un mejor rendimiento en los navegadores modernos que:checkbox
.$('#check_id').val();
para$('#check_id').is(":checked");
devolver el valor verdadero o falso.Esas 2 formas están funcionando:
$('#checkbox').prop('checked')
$('#checkbox').is(':checked')
(gracias @mgsloan)fuente
Prueba esta pequeña solución:
o
fuente
Las únicas formas correctas de recuperar el valor de una casilla de verificación son las siguientes
como se explica en las documentaciones oficiales en el sitio web de jQuery. El resto de los métodos no tiene nada que ver con la propiedad de la casilla de verificación, están verificando el atributo, lo que significa que están probando el estado inicial de la casilla de verificación cuando se cargó. En resumen:
elem.checked
) o puede usarlo$(elem).prop("checked")
si desea confiar en jQuery.$(elem).is(":checked")
.Las respuestas son engañosas, por favor verifique usted mismo a continuación
http://api.jquery.com/prop/
fuente
.is(":checked")
y.prop(":checked")
están trabajando lo mismo para mí con jQuery 1.10.0Solo para aclarar cosas:
Devolverá 'verdadero' o 'falso'
fuente
fuente
fuente
Simple pero efectivo y supone que sabes que la casilla de verificación se encontrará:
Da
true
/false
fuente
Demo de ejemplo
fuente
A pesar de que esta pregunta está pidiendo una solución jQuery, aquí hay una respuesta pura de JavaScript ya que nadie la ha mencionado.
Sin jQuery:
Simplemente seleccione el elemento y acceda a la
checked
propiedad (que devuelve un valor booleano).Aquí hay un ejemplo rápido escuchando el
change
evento:Para seleccionar elementos marcados, use la
:checked
pseudo clase (input[type="checkbox"]:checked
).Aquí hay un ejemplo que itera sobre los
input
elementos marcados y devuelve una matriz mapeada de los nombres de los elementos marcados.Ejemplo aquí
Mostrar fragmento de código
fuente
checked
propiedad es fácilmente accesible en el elemento DOM nativo. Algunas de las personas que buscan preguntas / respuestas como estas generalmente no son conscientes del hecho de que jQuery a veces no es necesario. En otras palabras, las personas de mente estrecha no son el objetivo demográfico para esta respuesta.Aquí se explica cómo obtener el valor de todas las casillas marcadas como una matriz:
fuente
para obtener el valor de checkboxex marcado en
jquery
:en
pure js
:fuente
Utiliza el siguiente código:
fuente
fuente
La mejor manera es
$('input[name="line"]:checked').val()
Y también puedes obtener el texto seleccionado
$('input[name="line"]:checked').text()
Agregue un atributo de valor y nombre a sus entradas de botón de radio. Asegúrese de que todas las entradas tengan el mismo atributo de nombre.
fuente
fuente
Solo atención, a partir de hoy, 2018, debido al cambio de la API a lo largo de los años. removeAttr están depricados, ¡ya no funcionan!
Marque o desmarque una casilla de verificación:
Malo, ya no funciona.
En cambio, debes hacer:
fuente