Foros del Web » Programando para Internet » Javascript »

Problema para validar dos campos

Estas en el tema de Problema para validar dos campos en el foro de Javascript en Foros del Web. Hola, Tengo el siguiente script para validar dos campos pero falla en lo siguiente: al presionar enviar, efectivamente me indica el campo vacío, pero posterior ...
  #1 (permalink)  
Antiguo 03/09/2010, 20:47
 
Fecha de Ingreso: julio-2007
Mensajes: 287
Antigüedad: 16 años, 8 meses
Puntos: 4
Pregunta Problema para validar dos campos

Hola,
Tengo el siguiente script para validar dos campos pero falla en lo siguiente:

al presionar enviar, efectivamente me indica el campo vacío, pero posterior a eso igual envía el formulario.
Se supone que no debiera enviarlo hasta completar los dos campos.

Este es el script. A ver si me dan una mano para descubrir el problema.

function valida_envia(){
//valido el nombre
if (document.fvalida.user.value.length==0){
alert("Debe ingresar su nombre de usuario")
document.fvalida.user.focus()
return false;
}
if (document.fvalida.pass.value.length==0){
alert("Tiene que escribir su password")
document.fvalida.pass.focus()
return false;
}


document.fvalida.submit();

}

De antemano, gracias.
  #2 (permalink)  
Antiguo 03/09/2010, 21:59
Avatar de lair  
Fecha de Ingreso: enero-2009
Ubicación: header('Location: Morelia");
Mensajes: 1.052
Antigüedad: 15 años, 3 meses
Puntos: 46
Respuesta: Problema para validar dos campos

Hola.

prueb acambiendo esto:
document.fvalida.user.value.length==0
por:
document.fvalida.user.value==''

Ora cosa te recomiendo que hagas referencia a los campos por su id de la siguiente manera:
document.getElementById("id_del_campo").value

Suerte
  #3 (permalink)  
Antiguo 03/09/2010, 22:19
 
Fecha de Ingreso: julio-2007
Mensajes: 287
Antigüedad: 16 años, 8 meses
Puntos: 4
Respuesta: Problema para validar dos campos

Ya resolví el problema.

Al botón enviar del formulario había que quitarle la acción de envío.
Osea:

<input type="submit" name="button" id="button" value="Entrar" onclick="valida_envia()"/>

por:

<input type="button" name="button" id="button" value="Entrar" onclick="valida_envia()"/>

eso era todo.

Gracias lair por tu ayuda, también agregue tu sugerencia.
  #4 (permalink)  
Antiguo 04/09/2010, 02:25
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Problema para validar dos campos

Hola:

Al enviar el formulario con javascript, estás en el caso de un formulario "no-accesible", ya que no se enviará nunca con javascript desactivado.
La forma accesible (y correcta) es mediante un botón del tipo submit, y la validación desde el evento del mismo nombre del formulario (<form onsubmit...)

Al evento debes pasarle el valor false para cancelar el envío... y ya que he mencionado la forma correcta, recalco que la validación "buena" debe hacerse en el servidor.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo

Etiquetas: campos, dos
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 23:44.