Hola a todos. He estado tratando de resolver esto por un tiempo ahora.Determine si todas las casillas de verificación dentro del objeto jQuery están marcadas, devuelva como booleano
creo un objeto jQuery de casillas de verificación y almacenarlo en una variable:
$group1 = $('#checkbox1,#checkbox2,#checkbox3,#checkbox4');
El usuario no puede continuar a menos que se comprueban todas las casillas de verificación de ese grupo.
He estado usando una sentencia if combinado con .is(':checked')
para encontrar un valor booleano:
if($group1.is(':checked')){
//continue is OK
}
... .is(':checked')
pero volverá TRUE
si cualquier casillas de verificación se comprueban dentro del grupo. Básicamente, .is(':checked')
realiza una operación OR en los elementos seleccionados en $ group1. Estoy buscando una operación Y, por lo que todos los elementos seleccionados deben marcarse para regresar al TRUE
. ¿Hay una función jQuery que hace esto u otra solución alternativa?
Sugiero que elimine '$' de sus nombres de variables. Esto no es obligatorio en JavaScript y está destinado a ser utilizado por código generado mecánicamente. Puedes usarlo (como hace jQuery), pero no es una buena práctica romper esta convención. – jwueller
Sugeriría agregar clases a sus casillas de verificación para que pueda hacer $ ('. ClassName: checkbox') o, si desea seleccionar todas las casillas de verificación, simplemente haga: $ (': checkbox') – JasCav
@elusive eso es realmente un convención jQuery común para representar variables que son colecciones jQuery. Recomiendo que continúe usándolo. Ayuda a la legibilidad del código y no duele nada. – BBonifield