Foros del Web » Programando para Internet » Javascript »

Ayuda con un formulario tipo radio

Estas en el tema de Ayuda con un formulario tipo radio en el foro de Javascript en Foros del Web. tengo una duda de novatos... como llamo el valor de un formulario tipo radio tengo esto: Código HTML: <form name= "sukatest" id= "sukatest" > <font> ...
  #1 (permalink)  
Antiguo 09/05/2008, 19:40
 
Fecha de Ingreso: mayo-2008
Mensajes: 17
Antigüedad: 16 años, 6 meses
Puntos: 0
Ayuda con un formulario tipo radio

tengo una duda de novatos... como llamo el valor de un formulario tipo radio
tengo esto:
Código HTML:
<form name="sukatest" id="sukatest">
<font>Primera Pregunta...</font><br>
<font>si</font><input type="radio" name="p01" id="p01" value="1">
<font>no</font><input type="radio" name="p01" id="p01" value="2"><br> 
kiero asignar el valor de la respuesta del usuario osea 1 o 2 segun la respuesta.

despues kiero compararlo y si es iwal a uno k aumente un contador para asi lograr contar el numero de si y el numero de no de todos los formularios.

este es mi codigo fuente
Código HTML:
<html>
<head>
<title></title>
<script>
var si=0;
var no=0;
function cuentaycompara()
{
var a=document.forms[0].p01;
if (a==1)
{
si=si+1;
document.write("el numero de si:" +si);
}
else
{
no=no+1;
document.write("el numero de no:" +no);
}
var b=document.forms[0].p02;
if (b==1)
{
si=si+1;
document.write("el numero de si:" +si);
}
else
{
no=no+1;
document.write("el numero de no:" +no);
}
}
</script>
</head>
<body>
<form name="sukatest" id="sukatest">
<font>Primera Pregunta...</font><br>
<font>si</font><input type="radio" name="p01" id="p01" value="1">
<font>no</font><input type="radio" name="p01" id="p01" value="2"><br>
<font>Segunda Pregunta...</font><br>
<font>si</font><input type="radio" name="p02" id="p02" value="si">
<font>no</font><input type="radio" name="p02" id="p02" value="no"><br>
</form>
</body>
</html> 
agradeceria mucho su ayuda y sus aportaciones al foro, ya me han ayudado antes y ah sido muy buena la ayuda la vdd ke ste foro esta muy bn grax
  #2 (permalink)  
Antiguo 10/05/2008, 03:01
 
Fecha de Ingreso: febrero-2005
Ubicación: Valencia
Mensajes: 101
Antigüedad: 19 años, 9 meses
Puntos: 15
Re: Ayuda con un formulario tipo radio

Bueno, yo no te puedo ayudar, pero sí que puedo poner un problema que tengo yo con formulario y radio..., que seleccione la opción que seleccione, si lo envío como javascript, el valor del radio me sale undefined.
En cambio, si lo envío con el post de php, sí que tiene valor...
El html es una plantilla, en la cual, dependiendo de si tiene o no javascript, el php modifica las variables para que se use java o no...
Código HTML:
 <table align="center" id="inicio-sesion" valign="top" cellspacing="5" cellpadding="5">
	<form{NOMFORM} action="{ARCHIVO}" method="post">
	  <tr>
	    <td colspan="2">
	      Introduzca los datos para que se le envíe un correo electrónico con los datos deseados.
	    </td>
	  </tr>
	  <tr>
	    <td>
	      Usuario:<input value="{USER}" type="text" name="user" maxlength="10">
	    </td>
	    <td>
	      Correo electrónico:<input value="{MAIL}" type="text" name="mail" maxlength="30">
	    </td>
	  </tr>
	  <tr>
	    <td colspan="2">
	      <input type="radio" name="opcion" value="contra">Enviar nueva contraseña.
              <br>  
	      <input type="radio" name="opcion" value="clave">Enviar clave de activación.
	    </td>
	  </tr>
	  <tr>
	    <td colspan="2">
	      {OCULTO}
	      <input type="{TIPO}" name="accion" value="Enviar"{ENVIAJAVA}>
	    </td>
	  </tr>
	</form>
      </table> 
Código:
function valida_activa(){
  if (document.act_pass.user.value.length==0){
    alert("Por favor, introduce tu nombre de usuario.");
    document.act_pass.user.focus();
    return 0; 
  }
  if (document.act_pass.mail.value.length==0){
    alert("Por favor, introduce tu correo electrónico.");
    document.act_pass.mail.focus();
    return 0; 
  }
  if (!CorreoValido(document.act_pass.mail.value)){
    alert("La dirección de correo electrónico no es válida.");
    document.act_pass.mail.focus();
    return 0;
  }
  alert(document.act_pass.opcion.value);
  if (document.act_pass.opcion.value!="contra" && document.act_pass.opcion.value!="clave"){
     alert("Tienes que seleccionar una opción (Enviar nueva contraseña o enviar nueva clave de activación).");
     return 0;
   } 
   //el formulario se envia
   document.act_pass.submit();  
}

EDITO:
YA LO TENGO
Código:
function valida_activa(){
  if (document.act_pass.user.value.length==0){
    alert("Por favor, introduce tu nombre de usuario.");
    document.act_pass.user.focus();
    return 0; 
  }
  if (document.act_pass.mail.value.length==0){
    alert("Por favor, introduce tu correo electrónico.");
    document.act_pass.mail.focus();
    return 0; 
  }
  if (!CorreoValido(document.act_pass.mail.value)){
    alert("La dirección de correo electrónico no es válida.");
    document.act_pass.mail.focus();
    return 0;
  }
  
  if (!document.act_pass.opcion[0].checked && !document.act_pass.opcion[1].checked){
    alert("Tienes que seleccionar una opción (Enviar nueva contraseña o enviar nueva clave de activación).");
    return 0;
  }
  else{
    if (document.act_pass.opcion[1].checked)
      document.act_pass.opcion.value=document.act_pass.opcion[1].value;
    else
      document.act_pass.opcion.value=document.act_pass.opcion[0].value;
  }
  //el formulario se envia
  document.act_pass.submit();  
}

Última edición por Souf; 10/05/2008 a las 03:27
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 04:35.