jQuery: ¿cómo puedo seleccionar solo las casillas de verificación que están visibles y marcadas?
Estoy intentando verificar si todas las casillas de verificación visibles en una serie determinada están o no marcadas y pensé en solo contar las visibles y las que están visibles y verificadas para ver si los números son iguales. El problema es que no puedo hacer que funcionen los selectores visibles ni los seleccionados.
Estas son algunas de las ideas que tuve pero que no funcionaron:
if($j("input[id^='chk_camp']:visible:checked").length == $j("input[id^='chk_camp']:visible").length)
ambos lados son 0 en este caso
if($j("input[id^='chk_camp']").filter(':visible').filter(':checked').length == $j("input[id^='chk_camp']").filter(':visible').length)
También devolvió 0 en ambos lados.
Tambien intentado
if($j("input[id^='chk_camp'][visible][checked]").length == $j("input[id^='chk_camp'][visible]").length)
y esto también devuelve 0 en ambos lados.
Como nota$j("input[id^='chk_camp']").length
devuelve el valor correcto. También el navegador con el que estoy trabajando es Firefox.
¿Qué estoy haciendo mal aquí?
Respuesta: Aparentemente, lo que estoy haciendo mal es en otro lugar. Estaba haciendo estas comprobaciones antes de hacer realmente visible el div que contenía las casillas de verificación, por lo que todas las comprobaciones de visibilidad volvían a ser falsas.