seleccionado - seleccionar checkbox jquery
casilla de verificación jQuery conjunto marcada (16)
¿Has intentado ejecutar $("#estado_cat").checkboxradio("refresh")
en tu casilla?
Ya probé todas las formas posibles, pero todavía no lo pude hacer funcionar. Tengo una ventana modal con una checkbox
Quiero que cuando se abra el modal, la checkbox
verificación o la desactivación de la checkbox
verificación se deba basar en un valor de la base de datos. (Ya tengo que trabajar con otros campos de formulario). Comencé a intentar verificarlo pero no funcionó.
Mi html div:
<div id="fModal" class="modal" >
...
<div class="row-form">
<div class="span12">
<span class="top title">Estado</span>
<input type="checkbox" id="estado_cat" class="ibtn">
</div>
</div>
</div>
y el jQuery
$("#estado_cat").prop( "checked", true );
También probé con attr
, y otros vistos aquí en los foros, pero ninguno parece funcionar. ¿Puede alguien señalarme el camino correcto?
EDIT: ok, realmente me falta algo aquí ... Puedo marcar / desmarcar usando el código si la casilla de verificación está en la página, pero está en la ventana modal, no puedo. Probé docenas de maneras diferentes ...
Tengo un enlace que se supone que abre el modal:
y jquery para "escuchar" el clic y ejecutar algunas operaciones como rellenar algunos cuadros de texto con datos provenientes de la base de datos. Todo funciona como quiero, pero el problema es que no puedo establecer la casilla de verificación activada / desactivada usando el código. ¡ayuda por favor!
$(function() {
$(".editButton").click(function(){
var id = $(this).data(''id'');
$.ajax({
type: "POST",
url: "process.php",
dataType:"json",
data: { id: id, op: "edit" },
}).done(function( data ) {
//the next two lines work fine, i.e., it grabs the value from database and fills the textboxes
$("#nome_categoria").val( data[''nome_categoria''] );
$("#descricao_categoria").val( data[''descricao_categoria''] );
//then I tried to set the checkbox checked (because its unchecked by default) and it does not work
$("#estado_cat").prop("checked", true);
$(''#fModal'').modal(''show'');
});
evt.preventDefault();
return false;
});
});
Dude prueba el siguiente código:
$("div.row-form input[type=''checkbox'']").attr(''checked'',''checked'')
O
$("div.row-form #estado_cat").attr("checked","checked");
O
$("div.row-form #estado_cat").attr("checked",true);
Establece la casilla de verificación después de cargar la ventana modal. Creo que está configurando la casilla de verificación antes de cargar la página.
$(''#fModal'').modal(''show'');
$("#estado_cat").attr("checked","checked");
Esto funciona.
$("div.row-form input[type=''checkbox'']").attr(''checked'',''checked'');
Esto ocurre porque con la versión más reciente de jquery attr(''checked'')
devuelve ''checked''
mientras que prop(''checked'')
devuelve true
.
Intente esto, ya que está usando la interfaz de usuario jQuery probablemente (si no es así, comente)
$("#fModal" ).dialog({
open: function( event, ui ) {
if(//some hidden value check which stores the DB value==expected value for
checking the Checkbox)
$("div.row-form input[type=''checkbox'']").attr(''checked'',''checked'');
}
});
Me encontré con este problema también.
y aquí está mi viejo código no funciona
if(data.access == ''private''){
Jbookaccess.removeProp("checked") ;
//I also have tried : Jbookaccess.removeAttr("checked") ;
}else{
Jbookaccess.prop("checked", true)
}
Aquí está mi nuevo código que se trabaja ahora:
if(data.access == ''private''){
Jbookaccess.prop("checked",false) ;
}else{
Jbookaccess.prop("checked", true)
}
por lo tanto, el punto clave es antes de que funcione, asegúrese de que la propiedad verificada existe y no se ha eliminado.
Puedes escribir como abajo el código dado.
HTML
<input type="checkbox" id="estado_cat" class="ibtn">
jQuery
$(document).ready(function(){
$(".ibtn").click(function(){
$(".ibtn").attr("checked", "checked");
});
});
Espero que te funcione.
Si desea utilizar esta funcionalidad para que un script de GreaseMonkey marque automáticamente una casilla de verificación en una página, tenga en cuenta que simplemente establecer la propiedad marcada puede no activar la acción asociada. En ese caso, "hacer clic" en la casilla de verificación probablemente lo hará (y establecer la propiedad marcada también).
$("#id").click()
Tienes que usar la función ''prop'':
.prop(''checked'', true);
Antes de jQuery 1.6 (ver la respuesta del usuario2063626 ):
.attr(''checked'',''checked'')
Tomando todas las respuestas propuestas y aplicándolas a mi situación, tratando de marcar o desmarcar una casilla de verificación basada en un valor recuperado de verdadero (debería marcar la casilla) o falso (no debería marcar la casilla) - Probé todo lo anterior y encontró que el uso de .prop ("verificado", verdadero) y .prop ("verificado", falso ) fue la solución correcta.
No puedo agregar comentarios o respuestas aún, pero sentí que esto era lo suficientemente importante como para agregar a la conversación.
Aquí está el código a largo plazo para una modificación del calendario completo que dice que si el valor recuperado "allDay" es verdadero, entonces marque la casilla de verificación con ID "even_allday_yn":
if (allDay)
{
$( "#even_allday_yn").prop(''checked'', true);
}
else
{
$( "#even_allday_yn").prop(''checked'', false);
}
Trabajó para mi:
$checkbok.prop({checked: true});
Ya que estás en una ventana modal (ya sea dinámica o en la página) puedes usar el siguiente código para lograr tu objetivo: (Me encontré con el mismo problema en mi sitio y así es como lo solucioné)
HTML:
<div class="content-container" style="text-align: right;">
<input type="checkbox" id="QueryGroupCopyQueries">
<label for="QueryGroupCopyQueries">Create Copies</label>
</div>
CÓDIGO:
$.each(queriesToAddToGroup, function (index, query) {
if (query.groupAddType === queriesGroupAddType.COPY) {
// USE FIND against your dynamic window and PROP to set the value
// if you are using JQUERY 1.6 or higher.
$(kendoWindow).find("input#QueryGroupCopyQueries").prop("checked", true);
return;
}
En lo anterior, "kendoWindow" es mi ventana (la mía es dinámica, pero también lo hago al agregar un elemento directamente en la página). Estoy haciendo un bucle a través de una matriz de datos ("queriesToAddToToGroup") para ver si alguna fila tiene un atributo de COPY. Si es así, quiero activar la casilla de verificación dentro de la ventana que establece ese atributo cuando un usuario guarda desde esta ventana.
el atributo "checked" marca la casilla de verificación tan pronto como existe. Por lo tanto, para marcar / desmarcar una casilla de verificación debe configurar / deseleccionar el atributo.
Para marcar la casilla:
$(''#myCheckbox'').attr(''checked'', ''checked'');
Para desmarcar la casilla:
$(''#myCheckbox'').removeAttr(''checked'');
Para probar el estado verificado:
if ($(''#myCheckbox'').is('':checked''))
Espero eso ayude...
$("#divParentClip").find("#subclip_checkbox")[0].checked=true;
La búsqueda devolverá la matriz, así que use [0] para obtener incluso si solo hay un elemento
si no usas encontrar entonces
$("#subclip_checkbox").checked=true;
esto funcionó bien en Mozilla Firefox para mí
.attr("checked",true)
.attr("checked",false)
funcionará. Asegúrese de que verdadero y falso no sean comillas.