Foros del Web » Programando para Internet » Javascript »

Verificar un formulario

Estas en el tema de Verificar un formulario en el foro de Javascript en Foros del Web. Hola, esta pregunta hago es muy sencilla la solución, pero no consigo verla. La situación es la siguiente: Un formulario que se sumita usando una ...
  #1 (permalink)  
Antiguo 14/02/2007, 08:39
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Verificar un formulario

Hola, esta pregunta hago es muy sencilla la solución, pero no consigo verla.

La situación es la siguiente:

Un formulario que se sumita usando una función, ya que el botón es una imagen

Código:
function Enviar() {
document.forms.nmsg.action = "./escribirmsg.asp?accion=enviar"
document.forms.nmsg.Submit()
}
hasta ahí todo bien, ahora la verificar el campo, me aparece la alerta, y cuando pincho en Aceptar, envia el formulario


Código:
function Verificar() {
checktema = document.forms.tema.value;
if (checktema.length < 1)
{
alert("Has de escribir un tema para este mensaje");
document.forms.tema.select();
document.forms.tema.focus();
return (false);
}
else
{
return (true);
}
}
Lo que pretendo es que no se envie el formulario, cuando se cumple la condición. ¿Cual es el error?

Gracias
  #2 (permalink)  
Antiguo 14/02/2007, 09:16
Avatar de FNX_NET  
Fecha de Ingreso: marzo-2004
Ubicación: EN EL INFIERNO.....
Mensajes: 1.707
Antigüedad: 20 años, 1 mes
Puntos: 7
Re: Verificar un formulario

debe ser por que es un submit y no un button


prueba con eso

ademas te falta punto y como en el primer queote
__________________
:-D "Que se libere del cielo confinado; que mi cuerpo sea la espada de hielo negro que nos lleve al abismo; que ningún poder pueda detenernos...Destructora de las almas de los dioses!!!":adios:


:pirata:
  #3 (permalink)  
Antiguo 14/02/2007, 10:16
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: Verificar un formulario

Hola:

Los input type="image" suelen hacer submit si están bien puestos, y a la vez envían las coordenadas en donde se ha pinchado...

El error puede estar en cualquier parte porque deberíamos ver el resto del código... posiblemente la verificación no esté bien puesta... por lo poco que he visto debería ser así:

<form onsubmit="return Verificar()"...

Te recomiendo que en las verificaciones pongas el formulario como parámetro (creo que es el mejor sistema)

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #4 (permalink)  
Antiguo 15/02/2007, 07:53
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Re: Verificar un formulario

Gracias a ambos por vuestras respuestas. El problema estaba que se me olvidó apuntar hacia el formulario

document.forms.nmsg.tema.value;

Me ha quedado una dudar en lo que respondió Caricato

Cita:
Te recomiendo que en las verificaciones pongas el formulario como parámetro (creo que es el mejor sistema)
¿Qué quieres decir con poner el formulario como parámetro?

Gracias
  #5 (permalink)  
Antiguo 15/02/2007, 08:22
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: Verificar un formulario

Hola:

Las validaciones bien hechas se hacen desde el tag form, provocando en las funciones validadoras que entreguen al formulario los valores true/false (aceptación/cancelación), y si se tienen muchos formularios, con una sola función validadora se pueden validar muchos formularios con esa sencilla premisa...

Un modelo de formulario y función validadora sería así:
<form onsubmit="return validar(this)"...

Si todos los campos tienen un campo "obligatorio" que no pueda estar vacío, con una declaración sencilla, vale para todos:

function validar(f) {
vale = f.obligatorio.value != "";
if (!vale) alert("rellene el campo obligatorio");
return vale;
}

f de la función equivale a "this" de la declaración en el tag form...

Si sigues este consejo evitarás un problema muy recurrente de los webmasters novatos.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
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 22:09.