Foros del Web » Programando para Internet » Javascript »

Si se deja un campo en blanco no continue le submit

Estas en el tema de Si se deja un campo en blanco no continue le submit en el foro de Javascript en Foros del Web. Tengo un formulario el cual en el boton submit tengo: Código: <input type="submit" name="B1" value="Enviar" id="B1" onclick="noblanco()"> entonces tengo esta funcion Código: <script LANGUAGE="javascript"> function ...
  #1 (permalink)  
Antiguo 07/08/2003, 13:46
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 1 mes
Puntos: 7
Si se deja un campo en blanco no continue le submit

Tengo un formulario el cual en el boton submit tengo:
Código:
<input type="submit" name="B1" value="Enviar" id="B1" onclick="noblanco()">
entonces tengo esta funcion
Código:
<script LANGUAGE="javascript">
function noblanco()
{
	var blanco = document.CotVeh.realname.value;
	if (blanco == ""){
		alert("no puede dejar el campo en blanco");  
	}
	javascript: history.go(-1);
}
</script>
Cuando dejo el inputbox que se llama realname en blanco me muestra el mensaje, pero no se para de cargar y el submit sigue trabajando y me ejecuta el Action del Form.

Eso significa que la linea de
Código:
javascript: history.go(-1);
no me esta trabajando.

Como podría resolver esto???
__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
  #2 (permalink)  
Antiguo 07/08/2003, 13:54
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
a ver, prueba así

Código:
<script LANGUAGE="javascript">
function noblanco()
{
	var blanco = document.CotVeh.realname.value;
	if (blanco == ""){
		alert("no puede dejar el campo en blanco");  
                                javascript: history.go(-1);
	}
                else{return true
	}
}
</script>
y en vez de poner esto en tu botón
<input type="submit" name="B1" value="Enviar" id="B1" onclick="noblanco()">

quitas lo que está en negrita y le pones al tag de form

<form name="form1" onsubmit="noblanco()">
  #3 (permalink)  
Antiguo 07/08/2003, 14:40
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 1 mes
Puntos: 7
Con OnSumit no me despliega ni el mensaje...
alguna otra opinion?
__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
  #4 (permalink)  
Antiguo 07/08/2003, 14:43
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
te da algun error?
  #5 (permalink)  
Antiguo 08/08/2003, 06:03
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 1 mes
Puntos: 7
No, no me da error...
Fíjate, lo que entiendo de lo que hice fue que el
Código:
javascript: history.go(-1);
no puede funcionar porque aun no eh cambiado de página, por lo tanto no puede hechar para atrás, lógico no!!


Bueno, pero ya encontré la forma de hacerlo y es la siguiente:
Al yo crear el boton de enviar lo creo asi:
Código:
<input type="button" value="Enviar" onclick="validaSubmite()">
Si te fijas, en el type no le pongo al botón sumit, sino que le pongo simplemente que sea un boton, para que no haga absolitamente nada, y yo manejo lo que quiero que haga el boton en el evento OnClick, asi:
Código:
function validaSubmite(){ 
    if (document.miFormulario.campo1.value == "") 
       alert("Debe rellenar el formulario") 
    else 
       document.miFormulario.submit() 
}
Como te puedes percatar, si el campo1 no está en blanco, entonces le mando al botón a hacer el sumit del formulario.
__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
  #6 (permalink)  
Antiguo 09/08/2003, 10:14
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola RsOfT:

Creo que cuando se usa el evento onsubmit, y la función devuelve false, no se realiza el action del form, por lo que en vez de haber puesto history.go(-1), debería ser return false... (si me equivoco, espero que me corrijan...)

Aunque usando otro botón como has hecho, puedes dar el "foco" al campo que quieras rellenar. Tal vez sea una buena opción.

Saludos
  #7 (permalink)  
Antiguo 09/08/2003, 10:56
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 1 mes
Puntos: 7
Mira, si con OnSubmit no me desplegaba el mensaje, entonces quiere decir que nisiquiera estaba llamando a la funcion. Por ende, nunca vería el return false...

__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
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 00:36.