¿Cómo puedo restablecer todas las casillas de verificación en un documento usando jQuery o JS puro?
javascript
jquery
checkbox
desfile de calle
fuente
fuente
Si desea usar la función de restablecimiento del formulario, es mejor que use esto:
$('input[type=checkbox]').prop('checked',true);
O
$('input[type=checkbox]').prop('checked',false);
Parece que
removeAttr()
no se puede restablecerform.reset()
.fuente
La respuesta anterior no funcionó para mí:
Lo siguiente funcionó
$('input[type=checkbox]').each(function() { this.checked = false; });
Esto asegura que todas las casillas de verificación estén desmarcadas.
fuente
He usado esto antes:
$('input[type=checkbox]').prop('checked', false);
Parece que .attr y .removeAttr no funcionan en algunas situaciones.
editar: Tenga en cuenta que en jQuery v1.6 y superior, debería usarlo en su
.prop('checked', false)
lugar para una mayor compatibilidad entre navegadores; consulte https://api.jquery.com/propComente aquí: ¿Cómo restablecer todas las casillas de verificación usando jQuery o JS puro?
fuente
En algunos casos, la casilla de verificación puede estar seleccionada de forma predeterminada. Si desea restaurar la selección predeterminada en lugar de establecerla como no seleccionada, compare la
defaultChecked
propiedad.$(':checkbox').each(function(i,item){ this.checked = item.defaultChecked; });
fuente
Javascript
var clist = document.getElementsByTagName("input"); for (var i = 0; i < clist.length; ++i) { clist[i].checked = false; }
jQuery
$('input:checkbox').each(function() { this.checked = false; });
Para hacer lo contrario, consulte: Seleccionar todas las casillas de verificación por ID / clase
fuente
$(":checkbox:checked").each(function () { this.click(); });
para desmarcar la casilla marcada, cambie su lógica para hacer lo contrario
fuente
Puede seleccionar qué div o parte de su página puede tener casillas de verificación marcadas y cuáles no. Me encontré con el escenario en el que tengo dos formularios en mi página y uno tiene valores prellenados (para actualizar) y el otro debe completarse nuevamente.
$('#newFormId input[type=checkbox]').attr('checked',false);
esto hará solo casillas de verificación en el formulario con id newFormId sin marcar.
fuente
Como se dijo en la respuesta de Tatu Ulmanen, usar el siguiente guión hará el trabajo
$('input:checkbox').removeAttr('checked');
Pero, como decía el comentario de Blakomen , después de la versión 1.6 es mejor usar
jQuery.prop()
en su lugar$('input:checkbox').prop('checked', false);
Tenga cuidado cuando su uso
jQuery.each()
puede causar problemas de rendimiento. (también, evitejQuery.find()
en ese caso. Use cada uno en su lugar)$('input[type=checkbox]').each(function() { $(this).prop('checked', false); });
fuente
Usé algo así
$(yourSelector).find('input:checkbox').removeAttr('checked');
fuente
fuente