Foros del Web » Programando para Internet » Javascript »

limitar maximo de checkboxes seleccionados

Estas en el tema de limitar maximo de checkboxes seleccionados en el foro de Javascript en Foros del Web. He estado leyendo pero no consigo implementar ninguna a mi codigo, dado que de javascript 0 de 0, necesitaría que validara que solo se han ...
  #1 (permalink)  
Antiguo 30/04/2010, 07:04
Avatar de grecacer  
Fecha de Ingreso: mayo-2005
Ubicación: Las Palmas de Gran Canari
Mensajes: 312
Antigüedad: 19 años
Puntos: 0
limitar maximo de checkboxes seleccionados

He estado leyendo pero no consigo implementar ninguna a mi codigo, dado que de javascript 0 de 0, necesitaría que validara que solo se han seleccionado 6 checkboxes de esta generación, que lista de 15 a 30, si alguien pudiera darme una mano estaría enormemente agradecido.

Código:
<form action="despedirjugador.php"  method="post" name="despido" id="despido"> 
         <?php do { ?>
         <tr>
         <td bgcolor="#D7D7D7"><div align="left" class="Estilo10"><?php echo $row_Recordset4['desc_puesto']; ?></div></td>
          <td><div align="left" class="Estilo10"><?php echo $row_Recordset4['jugador']; ?></div></td>
          <td><div align="center" class="Estilo10 Estilo10"><?php echo $row_Recordset4['desc_equiporig']; ?></div></td>
          <td><div align="center" class="Estilo10"><?php echo $row_Recordset4['valor']; ?></div></td>
          <td><div align="center" class="Estilo10">
          <input type="checkbox" name="despjugador[]" value="<?php echo $row_Recordset4['id_jugadores'] ?>" />
           </div></td>
           </tr>
    <?php } while ($row_Recordset4= mysql_fetch_assoc($Recordset4)); ?>
              </table>
               <p>
              <div>
                        <div align="right">
                          <input name="Submit2" type="submit" value="Despedir" />
                        </div>
              </div>
                       
            </form>
  #2 (permalink)  
Antiguo 30/04/2010, 07:41
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: limitar maximo de checkboxes seleccionados

Hola

Sería algo así

Código Javascript:
Ver original
  1. <html>
  2. <head>
  3. <script type="text/javascript">
  4. var contador = 0;
  5. function funcion() {
  6. for (var i=0;i < document.forms["despedido"].elements.length;i++) {
  7. inpt = document.forms[0].elements[i];
  8. if (inpt.checked) {
  9. contador++;
  10. }
  11. }
  12. if(contador >= 3) {
  13. alert('Has seleccionados demasiados');
  14. contador = 0;
  15. return false;
  16. }
  17. }
  18. </script>
  19. </head>
  20. <body>
  21. <form action=""  method="post" name="despedido" onsubmit="return funcion();">
  22. <input type="checkbox" name="despjugador[]" value="1" /><br />
  23. <input type="checkbox" name="despjugador[]" value="1" /><br />
  24. <input type="checkbox" name="despjugador[]" value="1" /><br />
  25. <input type="checkbox" name="despjugador[]" value="1" /><br />
  26. <input type="checkbox" name="despjugador[]" value="1" /><br />
  27. <input type="checkbox" name="despjugador[]" value="1" /><br />
  28. <input type="checkbox" name="despjugador[]" value="1" /><br />
  29. <input name="Submit2" type="submit" value="Despedir" />
  30. </form>
  31. </body>
  32. </html>

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 30/04/2010, 07:53
Avatar de grecacer  
Fecha de Ingreso: mayo-2005
Ubicación: Las Palmas de Gran Canari
Mensajes: 312
Antigüedad: 19 años
Puntos: 0
Respuesta: limitar maximo de checkboxes seleccionados

No lo consigo hacer funcionar, puede ser porque la generación de los checkboxes es dinámica? O sea se genera segun una select a la base de datos.
__________________
Tu sexshop online
  #4 (permalink)  
Antiguo 30/04/2010, 08:19
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: limitar maximo de checkboxes seleccionados

Hola

Fíjate que el nombre que tu le tienes puesto al form es despido y en el ejemplo te dí es despedido

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #5 (permalink)  
Antiguo 30/04/2010, 08:26
Avatar de grecacer  
Fecha de Ingreso: mayo-2005
Ubicación: Las Palmas de Gran Canari
Mensajes: 312
Antigüedad: 19 años
Puntos: 0
Respuesta: limitar maximo de checkboxes seleccionados

si eso lo he tenido en cuenta, el problema a mi modo de ver está aquí

Código HTML:
Ver original
  1. <input type="checkbox" name="despjugador[]" value="<?php echo $row_Recordset4['id_jugadores'] ?>" />

mientras tu me pones

Código HTML:
Ver original
  1. #
  2. <input type="checkbox" name="despjugador[]" value="1" /><br />
  3. #
  4. <input type="checkbox" name="despjugador[]" value="1" /><br />

yo en el value necesito pasar ese registro dinamico porque he de interactuar con ellos en la base de datos.

Y por cierto que se me olvidó agradecer de antemano la ayuda y el tiempo dedicado.


Al depurar la pagina aparece este error

'inpt.checked' es nulo o no es un objeto
__________________
Tu sexshop online

Última edición por grecacer; 30/04/2010 a las 08:48
  #6 (permalink)  
Antiguo 30/04/2010, 12:42
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: limitar maximo de checkboxes seleccionados

Hola

Acabo de probarlo en IE8, FF y Opera y funciona. Esta otra manera es la misma que la que te dí en el post anterior, solo que se crean los campos dinámicamente

Código Javascript:
Ver original
  1. <html>
  2. <head>
  3. <script type="text/javascript">
  4. var contador = 0;
  5. function funcion() {
  6. for (var i=0;i < document.forms["despedido"].elements.length;i++) {
  7. inpt = document.forms[0].elements[i];
  8. if (inpt.checked) {
  9. contador++;
  10. }
  11. }
  12. if(contador >= 3) {
  13. alert('Has seleccionados demasiados');
  14. contador = 0;
  15. return false;
  16. }
  17. }
  18. </script>
  19. </head>
  20. <body>
  21. <form action=""  method="post" name="despedido" onsubmit="return funcion();">
  22. <?php
  23. $i = 1;
  24. while ($i < 8){
  25. ?>
  26. <input type="checkbox" name="despjugador[]" value="<?php echo $i?>" /><br />
  27. <?php
  28. $i+= 1;
  29. }
  30. ?>
  31. <input name="Submit2" type="submit" value="Despedir" />
  32. </form>
  33. </body>
  34. </html>

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #7 (permalink)  
Antiguo 30/04/2010, 12:58
Avatar de grecacer  
Fecha de Ingreso: mayo-2005
Ubicación: Las Palmas de Gran Canari
Mensajes: 312
Antigüedad: 19 años
Puntos: 0
Respuesta: limitar maximo de checkboxes seleccionados

Perfecto, muchisimas gracias, funciona correctamente.
__________________
Tu sexshop online

Etiquetas: checkboxes, limitar, maximo
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 19:26.