Foros del Web » Programando para Internet » Javascript »

problema con seleccionar todos los checkbox

Estas en el tema de problema con seleccionar todos los checkbox en el foro de Javascript en Foros del Web. Buenas, estoy teniendo problemas para usar una función que permita seleccionar todos los checkbox de un formulario. Mi formulario usa el css y el js ...
  #1 (permalink)  
Antiguo 19/08/2010, 10:10
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
problema con seleccionar todos los checkbox

Buenas,
estoy teniendo problemas para usar una función que permita seleccionar todos los checkbox de un formulario.
Mi formulario usa el css y el js jNice (que es el que me genera el problema), el css del checkbox es:
Código CSS:
Ver original
  1. /* -------------
  2.  * Checkboxes
  3.  * ------------- */
  4. .jNiceCheckbox {
  5.     background: transparent url(../images/checkbox.gif) no-repeat center top;
  6.     vertical-align: middle;
  7.     height: 16px;
  8.     float: left;
  9.     margin: 0 10px 0 0;
  10.     width: 14px;
  11.     display:block;/*display: -moz-inline-block;*/
  12. }
  13.  
  14. /* -------------
  15.  * Checked - Used for both Radio and Checkbox
  16.  * ------------- */
  17. .jNiceChecked { background-position: center bottom;}

el js para darle estilo es que esta en el archivo jNice.js:
Código Javascript:
Ver original
  1. $('input:checkbox', this).each(function(){
  2.         $(this).addClass('jNiceHidden').wrap('<span></span>');
  3.         var $wrapper = $(this).parent();
  4.         $wrapper.prepend('<a href="#" class="jNiceCheckbox"></a>');
  5.         /* Click Handler */
  6.         $(this).siblings('a.jNiceCheckbox').click(function(){
  7.             var $a = $(this);
  8.             var input = $a.siblings('input')[0];
  9.             if (input.checked===true){
  10.             input.checked = false;
  11.             $a.removeClass('jNiceChecked');
  12.             }
  13.             else {
  14.             input.checked = true;
  15.             $a.addClass('jNiceChecked');
  16.             }
  17.             return false;
  18.         });
  19.         /* set the default state */
  20.         if (this.checked){
  21.             $('a.jNiceCheckbox', $wrapper).addClass('jNiceChecked');
  22.         }
  23.         });

y mi funcion que esta dentro del archivo funciones.js es:
Código Javascript:
Ver original
  1. $(document).ready(function(){
  2.         //checkbox para los permisos de usuarios
  3.     $("input[name=checktodos]").change(function(){
  4.     $('input[type=checkbox]').each( function() {
  5.         if($("input[name=checktodos]:checked").length == 1){
  6.         this.checked = true;
  7.         } else {
  8.         this.checked = false;
  9.         }
  10.     });
  11.     });
  12.  
  13. });

si en el formulario saco esto class="jNice" la funcion anda perfectamente pero si le agrego la clase para darle diseño al formulario deja de funcionar.
Como podría solucionarlo?
Desde ya muchas gracias
  #2 (permalink)  
Antiguo 19/08/2010, 10:39
Avatar de cloudandviator  
Fecha de Ingreso: agosto-2010
Ubicación: Popayán - Colombia
Mensajes: 27
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: problema con seleccionar todos los checkbox

Hola, viendo el funcionamiento del pluging me parece que funciona al onclick del checkbox deberías simularlo para que cambie el estado del span que es la imagen que al final muestra como checked.
  #3 (permalink)  
Antiguo 19/08/2010, 11:00
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
Respuesta: problema con seleccionar todos los checkbox

Cita:
Iniciado por cloudandviator Ver Mensaje
Hola, viendo el funcionamiento del pluging me parece que funciona al onclick del checkbox deberías simularlo para que cambie el estado del span que es la imagen que al final muestra como checked.
Hola me mataste con la respuesta jajaja, tu dices que cambie por esto?:
Código Javascript:
Ver original
  1. $("input[name=checktodos]").click(function(){

me podrías dar un ejemplo para guiarme?
salu2

Etiquetas: checkbox, seleccionar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:00.