Foros del Web » Programando para Internet » Javascript »

Marcar 1 Checkbox obligatoriamente.

Estas en el tema de Marcar 1 Checkbox obligatoriamente. en el foro de Javascript en Foros del Web. Hola gente, mi problema es sencillo. Pero JavaScript no es lo mío. Y no lo encontré en todo el foro. Tengo una X cantidad de ...
  #1 (permalink)  
Antiguo 28/03/2005, 11:17
Avatar de ignacio_giri  
Fecha de Ingreso: febrero-2003
Ubicación: Argentina, Rosario
Mensajes: 585
Antigüedad: 21 años, 2 meses
Puntos: 0
Marcar 1 Checkbox obligatoriamente.

Hola gente, mi problema es sencillo. Pero JavaScript no es lo mío. Y no lo encontré en todo el foro.

Tengo una X cantidad de checkbox y quiero que cuando haga el submit me compruebe si hay por lo menos "1" checkbox seleccionado, sino que me tire un mensaje que diga "Debe seleccionar en checkbox" o algo así.

Saluduos.
__________________
Ignacio
  #2 (permalink)  
Antiguo 28/03/2005, 11:30
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola ignacio_giri

El formulario:

<form action="tupagina.php" onsubmit="return validar(this)">

y la función para validarlo:
Código PHP:
function validar(frm) {
  for(
i=0;ele=frm.elements[i];i++)
    if(
ele.type=='checkbox')
      if(
ele.checked) return;
  
//si no encuentra ningún checkbox marcado
  //salta la alerta y se detiene el submit
  
alert('Marca algo ¿no?');
  return 
false;

Espero que te sirva. Saludos,
  #3 (permalink)  
Antiguo 28/03/2005, 11:34
Avatar de ignacio_giri  
Fecha de Ingreso: febrero-2003
Ubicación: Argentina, Rosario
Mensajes: 585
Antigüedad: 21 años, 2 meses
Puntos: 0
la idea está perfecta, pero no anda... no me lo toma...

<form name="form2" id="form2" method="post" action="http://www.ig2producciones.com.ar/inmoby/admin/componentes/com_artistas/acciones.php">

<input class="boton_eliminar" type="submit" name="borrar" onSubmit="return validar(this)" value="Eliminar">

estoy comprobandos estos:

<input type="checkbox" onClick="HR(this);" name="campos[[artista.id]]">

la idea es que el usuario marque como minimo un checkbox

y si paso esta validacion le tiene que tirar otro cartel de confirmacion
__________________
Ignacio

Última edición por ignacio_giri; 28/03/2005 a las 11:42
  #4 (permalink)  
Antiguo 28/03/2005, 12:50
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola de nuevo.

El evento onsubmit tienes que llamarlo desde el formulario, no desde el botón:

<form name="form2" id="form2" method="post" action="http://www.ig2producciones.com.ar/inmoby/admin/componentes/com_artistas/acciones.php" onsubmit="return validar(this)">

<input class="boton_eliminar" type="submit" name="borrar" value="Eliminar">

Espero que te funcione. Saludos,
  #5 (permalink)  
Antiguo 28/03/2005, 12:57
Avatar de ignacio_giri  
Fecha de Ingreso: febrero-2003
Ubicación: Argentina, Rosario
Mensajes: 585
Antigüedad: 21 años, 2 meses
Puntos: 0
no funciono..... funcionó EXCELENTE!

Saludos.
__________________
Ignacio
  #6 (permalink)  
Antiguo 28/03/2005, 12:58
Avatar de ignacio_giri  
Fecha de Ingreso: febrero-2003
Ubicación: Argentina, Rosario
Mensajes: 585
Antigüedad: 21 años, 2 meses
Puntos: 0
Che, y cuando pasa esa validacion quiero preguntarle si esta seguro si desea hacer esa accion con un "confirm"... como sería?
__________________
Ignacio
  #7 (permalink)  
Antiguo 28/03/2005, 13:05
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Rehola.

Creo que esto te servirá:
Código PHP:
function validar(frm) {
  for(
i=0;ele=frm.elements[i];i++)
    if(
ele.type=='checkbox')
      if(
ele.checked) return confirm('¿Seguro?');
  
//si no encuentra ningún checkbox marcado
  //salta la alerta y se detiene el submit
  
alert('Marca algo ¿no?');
  return 
false;

  #8 (permalink)  
Antiguo 28/03/2005, 13:08
Avatar de ignacio_giri  
Fecha de Ingreso: febrero-2003
Ubicación: Argentina, Rosario
Mensajes: 585
Antigüedad: 21 años, 2 meses
Puntos: 0
Mejor imposible amigo! Es exactamente lo que buscaba. Anda de 10.

Saludos.
__________________
Ignacio
  #9 (permalink)  
Antiguo 29/03/2005, 04:31
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Cita:
Iniciado por ignacio_giri
Anda de 10.
Que alegría ver un uno y un cero juntos. En el colegio siempre me los ponían por separado Me alegro de que te haya servido
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 07:20.