Foros del Web » Programando para Internet » Javascript »

Validar campos con type="image"

Estas en el tema de Validar campos con type="image" en el foro de Javascript en Foros del Web. Hola mis estimados tengo el siguiente problemilla. Resulta que tengo un formulario que valido con lo siguiente.. ******************** <script LANGUAGE="JavaScript"> function Validar(form) { if (form.nombre.value ...
  #1 (permalink)  
Antiguo 02/01/2008, 16:45
Avatar de Potro  
Fecha de Ingreso: abril-2001
Mensajes: 2.249
Antigüedad: 23 años, 9 meses
Puntos: 39
Validar campos con type="image"

Hola mis estimados tengo el siguiente problemilla.

Resulta que tengo un formulario que valido con lo siguiente..


********************

<script LANGUAGE="JavaScript">

function Validar(form)
{
if (form.nombre.value == "")
{ alert("Favor de ingresar su nombre"); form.nombre.focus(); return; }

if (form.apellidos.value == "")
{ alert("Favor de ingresar sus apellidos"); form.apellidos.focus(); return; }

if (form.empresa.value == "")
{ alert("Favor de ingresar el nombre de su empresa"); form.empresa.focus(); return; }

form.submit();
}

</script>


y el boton es el siguiete:

<input name="button" type="button" onClick="Validar(this.form)" value="Entrar">


**************************************

Esto me sirve de maravilla me valida muy bien los campos pero me han solicitado que no sea un boton comun que mejor sea una imagen y lo he sustituido por lo siguiente:


**************************************

<input type="image" src="img/contacto_enviar.gif" onClick="Validar(this.form)">

**************************************


y aquí viene el problema ya no me funciona tambien como el otro, al darle clic me dice que falta el nombre y al darle aceptar se refresca la página, como le puedo hacer para que me jale = que el otro boton espero su ayuda mil gracias...
__________________
Paginación en FLASH,

http://www.forosdelweb.com/f62/pagin...o-aqui-540241/
  #2 (permalink)  
Antiguo 02/01/2008, 18:56
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 21 años, 3 meses
Puntos: 45
Re: Validar campos con type="image"

Hola Potro:

Cuando haces click en un input type="image" el formulario se envía con las coordenadas donde hiciste click, así que igual te ahorras problemas si es una imagen normal <img>, que al hacerle click ejecuta el Validar(). Luego le das el CSS que quieras para que parezca un enlace.

También puedes meter una imagen en un elemento <button>, pero no sé hasta qué punto conseguirás que sea agradable a la vista con CSS.


Un saludo
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #3 (permalink)  
Antiguo 02/01/2008, 23:41
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 10 meses
Puntos: 1284
Re: Validar campos con type="image"

Hola:

Pues sí, los type="image" hacen submit, y si no te importa que se envíen las coordenadas, podrías hacer las validaciones normales sin asociar nada a ningún evento de esa imagen (sin onclick) y validando desde el tag form... con el evento submit y añadirle a ese return false que es la mejor forma de validar...

<form onsubmit="return validar(this)" ...
<input type="image" src="img/contacto_enviar.gif" >

y la validación de este tipo:
if (form.nombre.value == "")
{ alert("Favor de ingresar su nombre"); form.nombre.focus(); return false; }

de esa manera tu formulario pasa a ser "accesible" (tal como lo tienes se considera inaccesible, ya que quien tenga javascript desactivado, jamás enviará el form)

Por cierto que si lo haces "accesible", deberías a la vez validar en el servidor (es lo que siempre aconsejo)..

Sobre usar la imagen en un botón, basta con poner estilos de esta manera:
<button type="submit" style="margin: 0; padding: 0; border: 0; background-color: transparent"><img src="submit.gif" alt="submit" /></button>
De esa manera no se enviarían las coordenadas... y si en vez de ser tipo submit lo haces de tipo button, podrías seguir usando tu sistema de validación (insisto en que no es el adecuado)

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #4 (permalink)  
Antiguo 03/01/2008, 11:46
Avatar de Potro  
Fecha de Ingreso: abril-2001
Mensajes: 2.249
Antigüedad: 23 años, 9 meses
Puntos: 39
Re: Validar campos con type="image"

Mil gracias derkenuke y caricatos sus explicaciones y ejemplos me sirvierón mucho y ahora entiendo la importancia de hacer un buen codigo...

Gracias y saludos...
__________________
Paginación en FLASH,

http://www.forosdelweb.com/f62/pagin...o-aqui-540241/
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 21:21.