Ver Mensaje Individual
  #13 (permalink)  
Antiguo 16/02/2012, 11:26
Avatar de lukas4
lukas4
 
Fecha de Ingreso: octubre-2008
Ubicación: frente al pc
Mensajes: 496
Antigüedad: 15 años, 7 meses
Puntos: 12
Respuesta: validar antes de guardar

trata cambiando el boton, en lugar de submit ponle button creo que eso es parte del problema y al codigo js le agregas unas lineas:

Código Javascript:
Ver original
  1. function validar(){
  2. * *if(document.getElementById("folio").value==""){
  3. * * * alert("por favor inserte el folio.");
  4.       return;
  5. * *}
  6. * *if(document.getElementById("cve_med").value==""){
  7. * * * alert("por favor inserte clave de medicion.");
  8.       return;
  9. * *}
  10. * *if(document.getElementById("id").value==""){
  11. * * * alert("por favor inserte el numero de identificación.");
  12.       return;
  13. * *}
  14. * *if(document.getElementById("folio_cer").value==""){
  15. * * * alert("por favor inserte el folio de certificado.");
  16.       return;
  17. * *}
  18.    document.getElementById("formulario").submit();
  19. }

tambien estaba revisando unas validaciones en w3school, y encontre este ejemplo click aqui

porias agregarle a tu form el atributo onsubmit como lo muestra el ejemplo y quitarle al submit el atributo onclick

Código HTML:
Ver original
  1. <form name="formulario" id="formulario" action="<?=$_SERVER['PHP_SELF']?>" method="post"  onsubmit="return validar()">
  2. <input type="submit" name="Guardar" value="Guardar" />

y a tu codigo js agregale en los ifs el return false y si quieres de una vez agregale el focus

Código Javascript:
Ver original
  1. <script>
  2. function validar(){
  3. * *if(document.getElementById("folio").value==""){
  4. * * * alert("por favor inserte el folio.");
  5.       document.getElementById("folio").focus();
  6.       return false;
  7. * *}
  8. * *if(document.getElementById("cve_med").value==""){
  9. * * * alert("por favor inserte clave de medicion.");
  10.       document.getElementById("cve_med").focus();
  11.       return false;
  12. * *}
  13. * *if(document.getElementById("id").value==""){
  14. * * * alert("por favor inserte el numero de identificación.");
  15.       document.getElementById("id").focus();
  16.       return false;
  17. * *}
  18. * *if(document.getElementById("folio_cer").value==""){
  19. * * * alert("por favor inserte el folio de certificado.");
  20.       document.getElementById("folio_cer").focus();
  21.       return false;
  22. * *}
  23. }
  24. </script>
en el Clave de medicion te falto ponerle el id.

trata con alguna de estas ideas para ver si te funciona.

otra cosa, como estas usando tablas creo que esta demas que en cada td pongas un div yo recomendaria que aprendieras a usar divs+css (es un poco tedioso cuando uno esta aprendiendo, pero luego se pone divertido) pero por mientras sigue utilizando la tabla, ya cuando te sientas comodo trata de cambiar las tablas por divs.

tambien trata de anidar bien las etiquetas en las lineas 47 a la 50 tienes mal cerrado el label y el div:
Código HTML:
Ver original
  1. <labe> <!-- le falta la L al final -->
  2. <div align="center">los campos marcados con un * son obligatorios
  3.   </label> <!-- debes cerrar primero el div y al final el label -->
  4. </div>

saludos y buen dia
__________________
http://situcomo.blogspot.com
Karma is a Bitch... they said

Última edición por lukas4; 16/02/2012 a las 11:30 Razón: me falto ponerle ; a los return