Hola.
Me gustaría si pudieran ayudarme con este problema:
Tengo un formulario para enviar comentarios, éste se fija que el email sea válido, el nombre esté escrito y también el comentario.
Ahora, mi problema es el siguiente. Una vez que los datos están validados me lleve a la página que está pasada en el formulario, pero
SOLO si están válidos los 3 campos necesarios, sino están validados que no haga nada.
Desde ya muchas gracias.
Código HTML:
<script language="javascript" type="text/javascript">
function validarEmail(valor) {
if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(valor)){
var Message="OK";
// muestro mensaje de error en caso de que no se escriba el nombre
document.getElementById("respeMail").innerHTML =
'<strong>' + Message + '</strong>';
return (true)
} else {
var Message="ERROR";
// muestro mensaje de error en caso de que no se escriba el nombre
document.getElementById("respeMail").innerHTML =
'<strong>' + Message + '</strong>';
return (false);
}
}
function validaNombre(form) // compruebo si nombre está escrito
{
if(form.yourName.value == "" ||
form.yourName.value == null){
// Comprueba si contiene un string vacío o un valor nulo
var Message="ERROR";
// muestro mensaje de error en caso de que no se escriba el nombre
document.getElementById("respName").innerHTML =
'<strong>' + Message + '</strong>';
return(false);
}
else{
var Message="OK";
// muestro mensaje de error en caso de que no se escriba el nombre
document.getElementById("respName").innerHTML =
'<strong>' + Message + '</strong>';
return(true);
}
}
function validaComentario(form) // compruebo si nombre está escrito
{
if(form.yourComment.value == "" ||
form.yourComment.value == null){
// Comprueba si contiene un string vacío o un valor nulo
var Message="ERROR";
// muestro mensaje de error en caso de que no se escriba el nombre
document.getElementById("respComment").innerHTML =
'<strong>' + Message + '</strong>';
return(false);
}
else{
var Message="OK";
// muestro mensaje de error en caso de que no se escriba el nombre
document.getElementById("respComment").innerHTML =
'<strong>' + Message + '</strong>';
return(true);
}
}
</script>
<link href="../design/style_form.css" rel="stylesheet" type="text/css">
// FORMULARIO
<div id="title_sendcomments">Envía tu comentario</div><br />
<form method="post" action="post.php?post_id=<?php echo $_GET['post_id'];?>&send=ok">
<table width="200" border="0">
<tr>
<td id="respName">*</td>
<td class="text_form">
<label>
<input type="text" name="yourName" id="yourName" onBlur="return validaNombre(this.form);">
</label>
Tu Nombre</td>
</tr>
<tr>
<td id="respeMail">*</td>
<td class="text_form">
<label>
<input type="text" name="youreMail" id="youreMail" onBlur="return validarEmail(this.form.youreMail.value);">
</label>
Tu eMail</td>
</tr>
<tr>
<td id="respName"></td>
<td class="text_form">
<label>
<input type="text" name="yourWeb" id="yourWeb">
</label>
Tu Web</td>
</tr>
<tr>
<td id="respComment">*</td>
<td>
<label>
<textarea name="yourComment" cols="50" rows="15" id="yourComment" onBlur="return validaComentario(this.form);"></textarea>
</label> </td>
</tr>
<tr>
<td></td>
<td align="right"><label>
<input type="submit" name="btn_publicar" id="btn_publicar" value="Publicar comentarios" onClick="return send(this.form);">
</label></td>
</tr>
</table>