Pregunta Comprobando si una casilla de verificación está marcada con jQuery


Si la casilla de verificación está marcada, entonces solo necesito obtener el valor como 1; de lo contrario, necesito obtenerlo como 0. ¿Cómo hago esto usando jQuery?

$("#ans").val() siempre me dará un derecho en este caso:

<input type="checkbox" id="ans" value="1" />

552
2018-01-27 05:59


origen


Respuestas:


Utilizar .is(':checked') para determinar si se verifica o no, y luego establecer su valor en consecuencia.

Más información aquí.


962
2018-01-27 06:03



$("#ans").attr('checked') 

le dirá si está marcado. También puede usar un segundo parámetro verdadero / falso para marcar / desmarcar la casilla de verificación.

$("#ans").attr('checked', true);

Por comentario, uso prop en lugar de attr Cuando esté disponible. P.ej:

$("#ans").prop('checked')

203
2018-01-27 06:05



Solo usa $(selector).is(':checked') 

Devuelve un valor booleano.


85
2018-05-09 11:47



// use ternary operators
$("#ans").is(':checked') ? 1 : 0;

52
2018-04-16 15:31



La respuesta de Stefan Brinkmann es excelente, pero incompleta para principiantes (omite la asignación de variables). Solo para aclarar:

// this structure is called a ternary operator
var cbAns = ( $("#ans").is(':checked') ) ? 1 : 0;

Funciona así:

 var myVar = ( if test goes here ) ? 'ans if yes' : 'ans if no' ;

Ejemplo:

var myMath = ( 1 > 2 ) ? 'yes' : 'no' ;
alert( myMath );

Alertas 'no'

Si esto es útil, por favor vote la respuesta de Stefan Brinkmann.


19
2018-01-30 16:31



Puedes intentar esto:

$('#studentTypeCheck').is(":checked");

16
2017-08-08 11:39



He encontrado el mismo problema antes, Espero que esta solución pueda ayudarte. primero, agrega un atributo personalizado a tus casillas de verificación:

<input type="checkbox" id="ans" value="1" data-unchecked="0" />

escribe una extensión jQuery para obtener valor:

$.fn.realVal = function(){
    var $obj = $(this);
    var val = $obj.val();
    var type = $obj.attr('type');
    if (type && type==='checkbox') {
        var un_val = $obj.attr('data-unchecked');
        if (typeof un_val==='undefined') un_val = '';
        return $obj.prop('checked') ? val : un_val;
    } else {
        return val;
    }
};

use el código para obtener el valor de la casilla de verificación:

$('#ans').realVal();

puedes probar aquí


15
2017-07-05 08:22



$('input:checkbox:checked').val();        // get the value from a checked checkbox

7
2017-08-28 07:42



También puedes usar:

$("#ans:checked").length == 1;

6
2017-08-08 04:53



<input type="checkbox" id="ans" value="1" />

Jquery:    var test= $("#ans").is(':checked') y devuelve verdadero o falso.

En tu función:

$test =($request->get ( 'test' )== "true")? '1' : '0';

6
2018-02-14 04:53



Utilizar:

$("#ans option:selected").val()

4
2018-01-27 06:05