only - jquery ui versiones
marcar/desmarcar casilla de verificación usando jquery? (3)
Esta pregunta ya tiene una respuesta aquí:
Tengo algunos campos de entrada de texto en mi página, estoy mostrando sus valores usando la función setVal de javascript para editar, agregué un campo de casilla de verificación adicional, pasé un valor,
Aquí quiero verificar que si el value == 1
, entonces esta casilla de verificación debería estar marcada de otra manera desmarcada,
Hice esto usando dos divs, pero no me siento cómodo con eso, ¿hay alguna otra solución?
if(value == 1) {
$(''#uncheck'').hide();
$(''#check'').show();
} else{
$(''#uncheck'').show();
$(''#check'').hide();
}
Puede establecer el estado de la casilla de verificación en función del valor:
$(''#your-checkbox'').prop(''checked'', value == 1);
Puede usar .prop() para esto, como Antes de jQuery 1.6 , el método .attr() veces tenía en cuenta los valores de propiedad al recuperar algunos atributos, lo que podría causar un comportamiento inconsistente. A partir de jQuery 1.6 , el método .prop()
proporciona una forma de recuperar explícitamente los valores de las propiedades, mientras que .attr()
recupera los atributos.
var prop=false;
if(value == 1) {
prop=true;
}
$(''#checkbox'').prop(''checked'',prop);
o simplemente,
$(''#checkbox'').prop(''checked'',(value == 1));
Retazo
$(document).ready(function() {
var chkbox = $(''.customcheckbox'');
$(".customvalue").keyup(function() {
chkbox.prop(''checked'', this.value==1);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<h4>This is a domo to show check box is checked
if you enter value 1 else check box will be unchecked </h4>
Enter a value:
<input type="text" value="" class="customvalue">
<br>checkbox output :
<input type="checkbox" class="customcheckbox">
Para jQuery 1.6+:
.attr() está en desuso por propiedades; usa la nueva función .prop() como:
$(''#myCheckbox'').prop(''checked'', true); // Checks it
$(''#myCheckbox'').prop(''checked'', false); // Unchecks it
Para jQuery <1.6:
Para marcar / desmarcar una casilla de verificación, use el atributo checked
y modifíquelo. Con jQuery puedes hacer:
$(''#myCheckbox'').attr(''checked'', true); // Checks it
$(''#myCheckbox'').attr(''checked'', false); // Unchecks it
Porque sabes, en HTML, se vería algo así como:
<input type="checkbox" id="myCheckbox" checked="checked" /> <!-- Checked -->
<input type="checkbox" id="myCheckbox" /> <!-- Unchecked -->
Sin embargo, no puede confiar en el método .attr () para obtener el valor de la casilla de verificación (si es necesario). Tendrás que confiar en el método .prop() .