Foros del Web » Programando para Internet » Javascript »

por que me da indefinido?

Estas en el tema de por que me da indefinido? en el foro de Javascript en Foros del Web. Que tal, estoy intentando validar un grupo de radiobuttons y no me funciona lo que encontre en este mismo foro, el caso es este: Código ...
  #1 (permalink)  
Antiguo 05/11/2007, 16:20
 
Fecha de Ingreso: septiembre-2005
Mensajes: 1.289
Antigüedad: 18 años, 7 meses
Puntos: 3
Pregunta por que me da indefinido?

Que tal, estoy intentando validar un grupo de radiobuttons y no me funciona lo que encontre en este mismo foro, el caso es este:

Código PHP:

function validarGrupoRadios(i){
  
alert(document.frm_co[i+"_1"]);
  
encabezado1 document.frm_co[i+"_1"];
  
encabezado2 document.frm_co[i+"_2"];
  
  
alert(document.frm_co[i+"_1"].length);
  
alert(encabezado2.length);
  for ( 
0encabezado1.lengthk++ ){
    if ( 
encabezado1[k].checked && encabezado2[k].checked ){
        return 
true;
    }
  }
  return 
false;
}

function 
funcionX(){
  for ( var 
1<= 50i++ ) {
        if (!
validarGrupoRadios(i))
        {
          
alert("No ha respondido la pregunta " "." ) ;
          return 
false;
        }
    }

entonces siempre me manda indefinido en el alert para checar el tamaño de un grupo, no se que pase, alguna idea?

el name de mis grupos los fomo asi:

name='<%=cont%>_1'

en la variable de JAVA cont equivale a un contador consecutivo que se veria asi:

name='1_1'
name='2_1'
name='3_1'
etc.

solo como dato....
__________________
Wow! No se que decir...
  #2 (permalink)  
Antiguo 06/11/2007, 05:04
Avatar de ZiTAL  
Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.545
Antigüedad: 20 años, 2 meses
Puntos: 62
Re: por que me da indefinido?

te pongo un ejemplo secillo pero facil de comprender de como se validan campos tipo checkbox o radios:

Código HTML:
<html>
<head>
<script type="text/javascript">
  function CC(tipo)
   {
   	var form = document.getElementById("formu");    	
	var inputs = form.getElementsByTagName("input");	
	for (var i = 0; i < inputs.length; i++) 
	 {
		if(inputs[i].getAttribute('type')==tipo)
		 {
		 	var id=inputs[i].getAttribute('id');
		 	var name=inputs[i].getAttribute('name');
		 	var valor=inputs[i].checked;
		 	alert('El ' + tipo + ' con id: ' + id + ' y con el nombre: ' + name + ' tiene el valor: ' + valor );
		 }
	 }
   }
</script>
</head>
<body>
 <form id="formu" action="" method="post">
  Uno: <input type="checkbox" id="uno" name="uno" /><br />
  Dos: <input type="checkbox" id="dos" name="dos" /><br />
  Tres: <input type="checkbox" id="tres" name="tres" /><br />
  Cuatro: <input type="radio" id="cuatro" name="cuatro" /><br />
  Cinco: <input type="radio" id="cinco" name="cinco" /><br />
  Seis: <input type="radio" id="seis" name="seis" /><br />  
  <input type="button" id="button" value="Comprobar checkbox" onclick="CC('checkbox')" />
  <input type="button" id="button" value="Comprobar radios" onclick="CC('radio')" />
 </form>
</body>
</html> 
espero que te sirva ;)
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
  #3 (permalink)  
Antiguo 07/11/2007, 10:05
 
Fecha de Ingreso: septiembre-2005
Mensajes: 1.289
Antigüedad: 18 años, 7 meses
Puntos: 3
Re: por que me da indefinido?

Gracias por la respuesta, peor io realmente necesito validar que de un grupo N de radios esten seleccionado una opcion en cada uno de ellos, alguna idea? a mi no se me ocurre nada aparte de lo que puse al principio y no me funciona cuadno lo trato de implementar... :(
__________________
Wow! No se que decir...
  #4 (permalink)  
Antiguo 07/11/2007, 10:26
Avatar de ZiTAL  
Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.545
Antigüedad: 20 años, 2 meses
Puntos: 62
Re: por que me da indefinido?

no se si te entiendo bien pero eso se realiza poniendo el mismo atributo 'name' a los radios con diferentes 'value'-s, asi al seleccionar uno se des-selecciona el otro. Estas diciendo eso?

Código HTML:
<html>
<body>
 <form>
  <input type="radio" name="a" value="1">Uno<br />
  <input type="radio" name="a" value="2">Dos<br />
  <input type="radio" name="a" value="3">Tres<br />
 </form>
</body>
</html> 
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
  #5 (permalink)  
Antiguo 07/11/2007, 12:14
 
Fecha de Ingreso: septiembre-2005
Mensajes: 1.289
Antigüedad: 18 años, 7 meses
Puntos: 3
Re: por que me da indefinido?

jeje no, eso que comentas ya lo se, un grupo de radios debe tener el mismo name para que se pueda elegin una sola opcion tal como pones en tu ejemplo, lo que io digo es que puedo tener N grupos (name='a', name='b', etc etc) y necesito validar que en cada uno de esos grupos se haya seleccionado una opcion.... si me explico?
__________________
Wow! No se que decir...
  #6 (permalink)  
Antiguo 07/11/2007, 12:46
Avatar de ZiTAL  
Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.545
Antigüedad: 20 años, 2 meses
Puntos: 62
Re: por que me da indefinido?

no se si pegarte un puño o que!!!!, oye pues les pones un valor al inicio!!!!
Código HTML:
<html>
<head>
</head>
<body>
<form>
 <input type="radio" name="a" value="uno" checked>Uno<br />
 <input type="radio" name="a" value="dos">Dos<br />
 <input type="radio" name="a" value="tres">Tres<br />
 <input type="radio" name="b" value="I" checked>I<br />
 <input type="radio" name="b" value="II">II<br />
<input type="radio" name="b" value="III">III<br />
</form>
</body>
</html> 
asi no se escapan de elegir ;)

te vale?
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
  #7 (permalink)  
Antiguo 07/11/2007, 14:42
 
Fecha de Ingreso: septiembre-2005
Mensajes: 1.289
Antigüedad: 18 años, 7 meses
Puntos: 3
Re: por que me da indefinido?

jaja pues si tal vez si, pero pues hay un evento que esta en cada radio, entonces si la opcion elejida no la cambia no se ejecutara mi onclick.... al final guardo toda la informacion en un arreglo, este arreglo deberia tener el mismo tamaño que el numero de grupos existentes, entonces por hay me ire, si veo que es menor pues ya dare la advertencia de que falta una pregunta, lo malo es que no podre especificar cual es... aunque sigo con la duda del primer codigo que puse, lo probe en un html sencillito y si funciono, pero ya implementado en mi jso donde lo requiero me da ese valor indefinido... por que sera?
__________________
Wow! No se que decir...
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 11:50.