Tengo una lista de casillas de verificación:
<input type="checkbox" name="answer" id="id_1' value="1" />
<input type="checkbox" name="answer" id="id_2' value="2" />
...
<input type="checkbox" name="answer" id="id_n' value="n" />
Puedo recopilar todos los valores de las casillas marcadas; mi pregunta es ¿cómo puedo obtener todos los valores de las casillas de verificación sin marcar? Lo intenté:
$("input:unchecked").val();
para obtener el valor de una casilla de verificación sin marcar, pero obtuve:
Error de sintaxis, expresión no reconocida: sin marcar.
¿Alguien puede arrojar una luz sobre este tema? ¡gracias!
Respuestas:
Como dice el mensaje de error, jQuery no incluye un
:unchecked
selector.En cambio, debe invertir el
:checked
selector:fuente
$("input:checkbox:not(:checked)")
Te conseguirá las cajas sin marcar.fuente
Puede hacerlo extendiendo la funcionalidad de jQuerys. Esto acortará la cantidad de texto que tiene que escribir para el selector.
Luego puede usar
$("input:unchecked")
para obtener todas las casillas de verificación y botones de radio que están marcados.fuente
También se puede lograr con js puro de tal manera:
fuente
Esto recuperará todas las casillas de verificación sin marcar y excluirá la casilla de verificación "chkAll" que uso para marcar | desmarcar todas las casillas de verificación. Como quiero saber qué valor estoy pasando a la base de datos, los configuré en off, ya que las casillas de verificación me dan un valor de on.
fuente
chkAll
caja, entonces, ¿cuál es el punto de mencionarlo?Puedes usar así:
fuente
Para seleccionar por
class
, puede hacer esto:fuente
fuente