Foros del Web » Programando para Internet » Javascript »

segun msg confirm que vaya a una pagina

Estas en el tema de segun msg confirm que vaya a una pagina en el foro de Javascript en Foros del Web. Hola, estoy intentando probar con javascript y no me sale.. es lo siguiente: En mi pagina hay una caja de texto y un boton de ...
  #1 (permalink)  
Antiguo 21/03/2009, 15:11
 
Fecha de Ingreso: noviembre-2008
Mensajes: 122
Antigüedad: 15 años, 5 meses
Puntos: 4
Pregunta segun msg confirm que vaya a una pagina

Hola, estoy intentando probar con javascript y no me sale.. es lo siguiente:
En mi pagina hay una caja de texto y un boton de registrase. luego de reelenar el campo con el nombre del usr y apretar boton registrase quiero validar que:

// si el campo de texto es vacio --> se muestre un mensaje avisando que es necesario completar el campo de tecto (uso msg de alert) y no se hace nada.

// si el campo no es vacio --> se muestre un mensaje donde se pida confirmar el registro de la persona (uso msg confirm con aceptar o cancelar). Aqui:
- si clickea en aceptar, que se vaya a la pagina donde se procesa el registro de la persona
- si clickea en cancelar, que no se haga nada (permanecer en la pagina).

Se que es algo básico pero no me sale.. Les dejo mi codigo por si alguien contribuye a decirme en que me equivoco.

El objetivo es ir a la pagina registro.php para procesarel registro.

<script type="text/javascript">
function msgRegistrarse(){

if ((document.form2.txtnombre.value=="") || (document.form2.txtnombre.value=="Escriba su nombre"))
{
return alert('Atención! Para registrarse debe indicar su e-mail.')
}
else {
return confirm ('¿Confirma registrarse ?')
if (confirm==1) { open('http://midominio/registro.php'); }
}

}
</script>

<body>
<form id="form2" name="form2" method="post" action="">
<input name="registrarse" type="submit" id="registrarse" onclick="msgRegistrarse()" value="registrase"/>
</form>
</body>

gracias.
  #2 (permalink)  
Antiguo 21/03/2009, 15:19
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: segun msg confirm que vaya a una pagina

No deberías usar open para enviar al usuario a la página de proceso. Deberías colocar esa página en el action del <form>.

Otra cosa, deberías llamar a tu función msgRegistrarse() en el evento onsubmit del formulario, de esta manera:
Código html:
Ver original
  1. <form id="form2" name="form2" method="post" action="pagina.php" onsubmit="return msgRegistrarse()">
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 22/03/2009, 13:55
 
Fecha de Ingreso: noviembre-2008
Mensajes: 122
Antigüedad: 15 años, 5 meses
Puntos: 4
Pregunta Respuesta: segun msg confirm que vaya a una pagina

Hola, mira he trasladado lo que me has respondido a otro ejemplo similar un poco mas ampilado:

<script type="text/javascript">

function msgregistrarse(){
if ((document.form.textmail.value=="") || (document.form.txtmail.value=="Aqui su e-mail"))
{
return alert('Para registarse debe indicar su e-mail.')
}
else {
//compuebo que el email sea valido
var RegExPattern = /[\w-\.]{3,}@([\w-]{2,}\.)*([\w-]{2,}\.)[\w-]{2,4}/
var errorMsg = 'Debe especificar un e-mail válido.';
if (!(document.form.txtmail.value.match(RegExPattern) )) {
return alert(errorMsg);
}
else {
return confirm ('¿Confirma registrarse a traves de su email ?')
}
}
}
</script>

<form id="form" name="form" method="post" action="registrarse.php" >
<input name="txtmail" type="text" id="txtmail" value="Aqui su e-mail" size="35" maxlength="40"/>
<input name="registrarse" type="submit" id="registrarse" onclick="return msgRegistrarse()" value="Registrase"/>
</form></div>


Veras que, como tu me decias, en el form agregue el action: action="pagina.php" pero No agregue eso de " onsubmit="return msgRegistrarse()" porque si lo ponia no me mostraba los carteles de mensajes.
Solucionada esa parte, lo amplie agregandole la validacion de la direccion de email y ahora el problema es que al ingresar un email por ejemplo: [email protected] me muestra el mensaje de error: Debe especificar un e-mail válido e igualmente llama a procesar al archivo "registrarse.php" q esta indicado en el action del form.
Es decir, me muestra el mensaje de error pero lo ignora porque el mail se me registra.
Ahora si, no se donde este la falla, he probado varias cosas y nada, solo me respeta lo del email invalido y no llama al archivo del action, registrarse.php si por ejemplo ingreso como mail:" sfdsfsd sdfsf@". Ni idea del error... no me doy cuenta.. Te agradezco si me das alguna idea..un saludo. maria.-
  #4 (permalink)  
Antiguo 22/03/2009, 13:58
 
Fecha de Ingreso: noviembre-2008
Mensajes: 122
Antigüedad: 15 años, 5 meses
Puntos: 4
Pregunta Respuesta: segun msg confirm que vaya a una pagina

Perdona, pero al tipear se me fue el dedo..
es --> function msgRegistrarse(){ } y en el form: onclick="return msgRegistrarse()".
Aclarada la cuestion, un saludo.
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 11:25.