Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/04/2011, 11:11
Avatar de juan_14nob
juan_14nob
 
Fecha de Ingreso: abril-2010
Mensajes: 552
Antigüedad: 14 años, 8 meses
Puntos: 6
validacion de formulario

Problemas en funciones y variables javascript. Les explico mi problema, estoy realizando una validacion javascript, estoy utilizando ajax.. lo que quiero hacer es un formulario de mensaje que envie y si un campo esta vacio o no cumple con las condiciones que se ponga el campo el borde de color rojo..el panel de firebug me dice este error:


Elemento referenciado por ID/NAME en el ámbito global. Use el estándar del W3C document.getElementById() en su lugar.
[Interrumpir en este error] var nombre=eliminaEspacios(form.nombre.value);

Elemento referenciado por ID/NAME en el ámbito global. Use el estándar del W3C document.getElementById() en su lugar.
[Interrumpir en este error] var email=eliminaEspacios(form.email.value);

Elemento referenciado por ID/NAME en el ámbito global. Use el estándar del W3C document.getElementById() en su lugar.
[Interrumpir en este error] var mensaje=eliminaEspacios(form.mensaje.value);


lo estoy haciendo de esta manera:

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2. onLoad=function(){
  3.     clasenormal="inputnormal";
  4.     claseError="inputError";
  5.  
  6.  
  7. }
  8. function limpiaForm()
  9. {
  10.     for(i=0; i<=4; i++)
  11.     {
  12.         form.element[i].className=claseNormal;
  13.     }
  14.     document.getElementById("nombre").className=claseNormal;
  15. }
  16. function campoError(campo)
  17. {
  18.     campo.className=claseError;
  19.     error=1;
  20. }
  21. function eliminaEspacios(cadena)
  22. {
  23.     // Funcion para eliminar espacios delante y detras de cada cadena
  24.     while(cadena.charAt(cadena.length-1)==" ") cadena=cadena.substr(0, cadena.length-1);
  25.     while(cadena.charAt(0)==" ") cadena=cadena.substr(1, cadena.length-1);
  26.     return cadena;
  27. }
  28.  
  29. function validaForm()
  30. {
  31.     //limpiaForm();
  32.     error=0;
  33.  
  34.     var nombre=eliminaEspacios(form.nombre.value);
  35.     var email=eliminaEspacios(form.email.value);
  36.     var mensaje=eliminaEspacios(form.mensaje.value);
  37.  
  38.    
  39.     if(!validaLongitud(nombre, 1, 4, 50)) campoError(nombre);
  40.     if(!validaLongitud(email, 1, 4, 50)) campoError(email);
  41.     if(!validaLongitud(mensaje, 1, 4, 50)) campoError(mensaje);
  42.  
  43.    
  44.     }
  45.    
  46.     function validaLongitud(valor, permiteVacio, minimo, maximo)
  47. {
  48.     var cantCar=valor.length;
  49.     if(valor=="")
  50.     {
  51.         if(permiteVacio) return true;
  52.         else return false;
  53.     }
  54.     else
  55.     {
  56.         if(cantCar>=minimo && cantCar<=maximo) return true;
  57.         else return false;
  58.     }
  59. }

Código HTML:
Ver original
  1.         <form id="form" class="formuclaefwfew" method="POST" action="contac.php">
  2.         <tr>
  3.             <td class="tables">Nombre: </td>
  4.             <td><input type="text" class="inputnormal" size="22" id="nombre"> </td>
  5.         </tr>
  6.         <tr>   
  7.             <td class="tables">E-mail: </td>
  8.             <td><input type="text" class="inputnormal" size="22" id="email" > </td>
  9.            
  10.         </tr>      
  11.         <tr>
  12.             <td class="tables">Comentario: </td>
  13.             <td><textarea class="inputnormal" id="mensaje"></textarea><br/> </td>
  14.         </tr>  
  15.            
  16.         </table>
  17.             <input class="but" type="button" value="Enviar" onclick="validaForm();"></td>
  18.            
  19.             <input class="but" type="reset" value="Borrar" ></td>
  20.            
  21.         </form>