Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/01/2011, 01:54
vitro012
 
Fecha de Ingreso: marzo-2009
Mensajes: 133
Antigüedad: 15 años, 1 mes
Puntos: 4
Campo de texto multi-nombre

Hola, un saludo a todos.

Tengo poco usando js y no sé si lo que quiero es posible (bueno de una forma sencilla y corta).

Tengo el siguiente código:

Código HTML:
if (document.formulario.nombre.value.length==0){ 
       error.push('Nombre invalido, solo usa letras');  
       document.formulario.nombre.style.borderColor = 'red';
      } else{
                document.formulario.nombre.style.borderColor = '#06C';
	}
El cual quiero para validar un formulario, del cual varios de los campos son de tipo similar (string, numerico, etc.)

en algunos, lo único que cambia es el nombre:
document.formulario.nombre.value.length==0
document.formulario.ciudad.value.length==0
document.formulario.email.value.length==0
etc.

En algunos el código para validar es el mismo, por lo cual no veo para que repetir lo mismo, me gustaría sólo cambiar el nombre del campo.

La pregunta es ¿?
¿Cómo puedo hacerle para no repetir el mismo código?

intente con una funcion, intentando pasar el nombre o ID del campo como parametro.


function valida_envia(){

validar ("nombre_del_campo");

function validar (campo){


if (document.formulario.campo.value.length==0){
error.push( campo + ' invalido, solo usa letras');
document.formulario.campo.style.borderColor = 'red';
} else{
document.formulario.campo.style.borderColor = '#06C';
}

}

}
y no funciona... :golpeado

Pense en 3 soluciones: La anterior (que no sé si sea posible), escribir todo el código (Una para cada campo, son mas de 15) e intentar hacer un método (algo que aún no sé). document.formulario.campo.validarcampo;

Alguien me podría ayudar.

Gracias.



P.D. El evento se desancadena al presionar el boton de submit, es decir, al presionarlo verifica los campos (por el momento que no esten vacios).
<input type="button" value="Enviar" onclick="valida_envia()">