Foros del Web » Programando para Internet » Javascript »

error en comprobación de form

Estas en el tema de error en comprobación de form en el foro de Javascript en Foros del Web. Hola amigos, tengo el siguiente código javascript para validar un formulario pero me ha sido imposible hacerlo funcionar, el error que me da es: obj.form.elements.dia ...
  #1 (permalink)  
Antiguo 04/07/2005, 22:38
Avatar de andinistas  
Fecha de Ingreso: julio-2003
Ubicación: Bogotá COL
Mensajes: 1.000
Antigüedad: 20 años, 9 meses
Puntos: 0
Pregunta error en comprobación de form

Hola amigos,

tengo el siguiente código javascript para validar un formulario pero me ha sido imposible hacerlo funcionar, el error que me da es:

obj.form.elements.dia has no properties
(dia = obj.form.elements['dia'].options[obj.form.elements['dia'].selectedIndex].value;)

ok el código es el siguiente:

---------------------------------------
function check(){

var dia
var mes
var annyo
var sexo
var estado

var obj = document.forms[0].elements[0];

dia = obj.form.elements['dia'].options[obj.form.elements['dia'].selectedIndex].value;
mes = obj.form.elements['mes'].options[obj.form.elements['mes'].selectedIndex].value;
annyo = obj.form.elements['annyo'].options[obj.form.elements['annyo'].selectedIndex].value;
sexo = obj.form.elements['sexo'].options[obj.form.elements['sexo'].selectedIndex].value;
estado = obj.form.elements['estado'].options[obj.form.elements['estado'].selectedIndex].value;

//1. Login
if (obj.form.elements['login'].value=="")
{
alert("Debe de especificar un nombre de usuario, ejemplo: mperez, jguerrero, etc");
obj.form.elements['login'].focus();
return false;
}

//2. password
if (obj.form.elements['password'].value=="")
{
alert("Debe de especificar un password o clave para su cuenta en Avecofa.com");
obj.form.elements['password'].focus();
return false;
}

if (obj.form.elements['password'].value == obj.form.elements['rpassword'].value){
document.form.submit();
}else{
alert('Los passwords no coinciden, vuelve a intentarlo!');
return false;
}


//3. nombres
if (obj.form.elements['nombres'].value=="")
{
alert("Debe de especificar sus Nombres.");
obj.form.elements['nombres'].focus();
return false;
}

//4. apellidos
if (obj.form.elements['apellidos'].value=="")
{
alert("Debe de especificar sus Apellidos.");
obj.form.elements['apellidos'].focus();
return false;
}

//5. cedula
if (obj.form.elements['cedula'].value=="")
{
alert("Debe de especificar su cédula de identidad.");
obj.form.elements['cedula'].focus();
return false;
}

//6. Email
if (obj.form.elements['remail'].value.indexOf('@') == -1)
{
alert("Debe de especificar de nuevo en este campo la direccion de email para verificarla\n Recuerde Introducirla bien para completar su registro!\n Será nuestro único medio de comunicación con Usted.");
obj.form.elements['email1'].focus();
return false;
}

if (obj.form.elements['email'].value.indexOf('@') == -1)
{
alert("Debe de especificar una dirección válida de email.\n Recuerde Introducirla bien para completar su registro!\n Será nuestro único medio de comunicación con Usted.");
obj.form.elements['email'].focus();
return false;
}

if (obj.form.elements['email'].value == obj.form.elements['remail'].value){
document.form.submit();
}else{
alert('Verifique su información de correo electrónico, están escritas de una forma diferente');
return false;
}

//7. Día de nacimiento
if (obj.form.elements['dia'].value=="")
{
alert("Seleccione el día de nacimiento");
obj.form.elements['dia'].focus();
return false;
}

//8. ' de nacimiento
if (obj.form.elements['mes'].value=="")
{
alert("Seleccione el mes de nacimiento");
obj.form.elements['mes'].focus();
return false;
}

//9. añoo de nacimiento
if (obj.form.elements['annyo'].value=="")
{
alert("Seleccione el Año de nacimiento");
obj.form.elements['annyo'].focus();
return false;
}

//10. direccion
if (obj.form.elements['direccion'].value=="")
{
alert("Debe de especificar su dirección");
obj.form.elements['direccion'].focus();
return false;
}

//9. estado
if (obj.form.elements['estado'].value=="")
{
alert("Debe de especificar el Estado / Región");
obj.form.elements['estado'].focus();
return false;
}

obj.form.submit();
return false;
}
---------------------------------------

al hacer clic en el boton enviar debe salir el alert con la validación

<input name="Submit" type="submit" value="Enviar" tabindex="25" OnClick="return check();">

alguien me puede aconsejar?
__________________
Un Saludo, Andinistas.
"Llegaron... Ellos tenían la biblia y nosotros la tierra... y nos dijieron: 'Cierren los ojos y recen.' Cerramos los ojos y cuando los abrimos,
ellos tenían la tierra y nosotros la biblia." Abadío Green.
  #2 (permalink)  
Antiguo 05/07/2005, 19:26
Avatar de andinistas  
Fecha de Ingreso: julio-2003
Ubicación: Bogotá COL
Mensajes: 1.000
Antigüedad: 20 años, 9 meses
Puntos: 0
Alguien me puede echar una mano?
__________________
Un Saludo, Andinistas.
"Llegaron... Ellos tenían la biblia y nosotros la tierra... y nos dijieron: 'Cierren los ojos y recen.' Cerramos los ojos y cuando los abrimos,
ellos tenían la tierra y nosotros la biblia." Abadío Green.
  #3 (permalink)  
Antiguo 09/07/2005, 23:59
Avatar de Carlos1975  
Fecha de Ingreso: mayo-2005
Mensajes: 29
Antigüedad: 18 años, 11 meses
Puntos: 0
Prueba con esto:
<script LANGUAGE="JavaScript">

function Check(form)
{
if (form.nombre.value == "")
{ alert("Por favor ingrese su nombre"); form.nombre.focus(); return; }

if (form.email.value == "")
{ alert("Por favor ingrese su dirección de e-mail"); form.email.focus(); return; }

if (form.email.value.indexOf('@', 0) == -1 ||
form.email.value.indexOf('.', 0) == -1)
{ alert("Dirección de e-mail inválida"); form.Email.focus(); return; }

if (form.pais.value == "")
{ alert("Por favor diga en que pais reside"); form.pais.focus(); return; }

if (form.tipo.value == "")
{ alert("Por favor diga que tipo de animal tiene"); form.tipo.focus(); return; }

if (form.otro.value == "")
{ alert("Por favor especifique que otro tipo de animal "); form.otro.focus(); return; }

if(form.pass1.value != form.pass2"")
{ alert("Sus passwords no coinciden"); form.pass2.focus(); return;}

form.submit();
}

</script>


<input name="enviar" type="submit" value="enviar" onClick="Check()">

Lo que no entiendo por que declaras variables cuando no hacen falta se supone que los valores del formulario ya los usa el javascript
Salu2
  #4 (permalink)  
Antiguo 10/07/2005, 00:36
Avatar de andinistas  
Fecha de Ingreso: julio-2003
Ubicación: Bogotá COL
Mensajes: 1.000
Antigüedad: 20 años, 9 meses
Puntos: 0
nop :o(

Nop nada,

sigue con el mismo error

Error: form has no properties in if (form.nombre.value == "")

y este

checkform is not defined
__________________
Un Saludo, Andinistas.
"Llegaron... Ellos tenían la biblia y nosotros la tierra... y nos dijieron: 'Cierren los ojos y recen.' Cerramos los ojos y cuando los abrimos,
ellos tenían la tierra y nosotros la biblia." Abadío Green.
  #5 (permalink)  
Antiguo 10/07/2005, 01:39
Avatar de mazzy  
Fecha de Ingreso: julio-2005
Ubicación: -
Mensajes: 15
Antigüedad: 18 años, 9 meses
Puntos: 0
El text o textarea: nombre, del form esta declarado en el HTML?
  #6 (permalink)  
Antiguo 10/07/2005, 12:21
Avatar de andinistas  
Fecha de Ingreso: julio-2003
Ubicación: Bogotá COL
Mensajes: 1.000
Antigüedad: 20 años, 9 meses
Puntos: 0
Pregunta :o(

Cita:
Iniciado por mazzy
El text o textarea: nombre, del form esta declarado en el HTML?
Hola, si el nombre del form lo tengo declarado en el html, pero no sé me sigue dando error. tienen algún script alternativo para la validación de formularios?
__________________
Un Saludo, Andinistas.
"Llegaron... Ellos tenían la biblia y nosotros la tierra... y nos dijieron: 'Cierren los ojos y recen.' Cerramos los ojos y cuando los abrimos,
ellos tenían la tierra y nosotros la biblia." Abadío Green.
  #7 (permalink)  
Antiguo 10/07/2005, 12:37
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Sin ver el formulario y así a ojo diría que la referencia a los elementos está mal

prueba con esta referencia

var obj = document.forms[0]

y al resto de referencias quíta la parte de .form.

dia = obj.elements['dia'].options[obj.elements['dia'].selectedIndex].value;

Prueba con estas dos primeras líneas y si el siguiente error que te da es para el siguiente elemento (mes) es que vamos bien
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 14:23.