Estoy tratando de marcar / desmarcar todas las casillas de verificación usando jQuery. Ahora, al marcar / desmarcar la casilla de verificación principal, todas las casillas de verificación secundarias se seleccionan / deseleccionan también con el texto de la casilla de verificación principal que se cambia a checkall / uncheckall.
Ahora quiero reemplazar la casilla de verificación principal con un botón de entrada y cambiar el texto también en el botón para marcar / desmarcar. Existe el código, ¿alguien puede modificar el código?
$( function() {
$( '.checkAll' ).live( 'change', function() {
$( '.cb-element' ).attr( 'checked', $( this ).is( ':checked' ) ? 'checked' : '' );
$( this ).next().text( $( this ).is( ':checked' ) ? 'Uncheck All' : 'Check All' );
});
$( '.cb-element' ).live( 'change', function() {
$( '.cb-element' ).length == $( '.cb-element:checked' ).length ? $( '.checkAll' ).attr( 'checked', 'checked' ).next().text( 'Uncheck All' ) : $( '.checkAll' ).attr( 'checked', '' ).next().text( 'Check All' );
});
});
<input type="checkbox" class="checkAll" /> <b>Check All</b>
<input type="checkbox" class="cb-element" /> Checkbox 1
<input type="checkbox" class="cb-element" /> Checkbox 2
<input type="checkbox" class="cb-element" /> Checkbox 3
Respuestas:
Prueba este:
MANIFESTACIÓN
fuente
.click()
.attr()
yremoveAttr()
no debe usarse con el atributo "marcado". ComoremoveAttr()
eliminará el atributo en lugar de establecerlo enfalse
..prop('checked', true)
o.prop('checked', false)
debería usarse en su lugar, como se explica en la respuesta @ richard-garside.Esta es la forma más corta que he encontrado (necesita jQuery1.6 +)
HTML:
JS:
Estoy usando .prop ya que .attr no funciona para casillas de verificación en jQuery 1.6+ a menos que haya agregado explícitamente un atributo marcado a su etiqueta de entrada.
Ejemplo-
fuente
Prueba este:
HTML
JavaScript
MANIFESTACIÓN
fuente
HTML
Javascript
fuente
Solución para alternar casillas de verificación con un botón, compatible con jQuery 1.9+ donde toogle-event ya no está disponible :
MANIFESTACIÓN
fuente
Prueba esto:
e
es el evento generado cuando lo hacesclick
, ye.target
es el elemento en el que se hace clic (.checkAll
), por lo que solo tienes que poner la propiedadchecked
de elementos con clase.cb-element
como la del elemento con clase .checkAll`.PD: ¡Disculpe mi mal inglés!
fuente
$('#all_news_items').on('click', function(e) { $('.news-item-option').prop('checked', $(e.target).prop('checked')); });
sin el checkall funciones que interfieren con otros elementos de formulario, por lo que puede agregar un nuevo checkall fácilmente:$('#all_specializations').on('click', function(e) { $('.specialization-option').prop('checked', $(e.target).prop('checked')); });
Puedes probar esto
Class
.checkAll
es una casilla de verificación que controla la acción masivafuente
Acordado con respuesta corta de Richard Garside, pero en lugar de utilizar
prop()
en la$(this).prop("checked")
que se puede utilizar nativa JSchecked
propiedad de la casilla de verificación como,fuente
Marque / Desmarque Todo con la propiedad Intermedia usando jQuery
Obtener elementos marcados en matriz utilizando el método getSelectedItems ()
Fuente Casilla de verificación Seleccionar / Deseleccionar todo con verificación maestra indeterminada
HTML
jQuery
fuente
La mejor solución aquí Compruebe Fiddle
fuente
El código a continuación funcionará si el usuario selecciona todas las casillas de verificación, luego marque todas las casillas de verificación y si el usuario desmarca cualquier casilla de verificación, marque todas las casillas de verificación.
fuente
prueba esto
fuente
Auto-promoción descarada: hay un complemento jQuery para eso .
HTML:
JS:
...y tu estas listo.
http://jsfiddle.net/mattball/NrM2P
fuente
prueba esto,
fuente
Puede usar
this.checked
para verificar el estado actual de la casilla de verificación,Mostrar fragmento de código
fuente
Pruebe el siguiente código para marcar / desmarcar todas las casillas de verificación
Prueba este enlace de demostración
También hay otra forma corta de hacer esto, consulte el siguiente ejemplo. En este ejemplo, marque / desmarque todas las casillas de verificación está marcada o no si está marcada, todas se marcarán y, si no, todas estarán desmarcadas
fuente
Sé que esta pregunta es antigua, pero noté que la mayoría de las personas están usando una casilla de verificación. La respuesta aceptada usa un botón, pero no puede funcionar con varios botones (por ejemplo, uno en la parte superior de la página uno en la parte inferior). Así que aquí hay una modificación que hace ambas cosas.
HTML
jQuery
Esto le permitirá tener tantos botones como desee al cambiar el texto y los valores de las casillas de verificación. Incluí una
e.preventDefault()
llamada porque esto evitará que la página salte a la parte superior debido a lahref="#"
parte.fuente
fuente
Aquí hay un enlace, que se utiliza para marcar y desmarcar la casilla de verificación principal y todas las casillas de verificación secundarias se seleccionan y deseleccionan.
jquery check desmarca todas las casillas de verificación Usando Jquery con Demo
fuente
fuente
agregue esto en su bloque de código, o incluso haga clic en su botón
fuente
fuente
Marque todo con desmarcar / verificar controlador si todos los elementos están / no están marcados
JS:
HTML:
fuente