Hola, mi problema es con una funcion de validacion del formulario, que cuando llega a la parte de window.document.formulario.submit(); no lo envia. Os pongo el codigo y aclaro que lo de mail_to esta asi para que no me salte el filtro anti-spam, en el codigo original esta bien:
Código HTML:
<html>
<head>
<script type="text/javascript">
<!--
function text(a)
{
if(a == 1){
window.document.formulario.Texto.value = "Déjanos tu opinión sobre la página aquí";
}
if(a == 2){
window.document.formulario.Texto.value = "Expon tus quejas aquí";
}
if(a == 3){
window.document.formulario.Texto.value = "Si tienes alguna duda no dudes en ponerla aquí";
}
}
function mail(texto){
var mailres = true;
var cadena = "abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ1234567890@._-";
var arroba = texto.indexOf("@",0);
if ((texto.lastIndexOf("@")) != arroba) arroba = -1;
var punto = texto.lastIndexOf(".");
for (var contador = 0 ; contador < texto.length ; contador++){
if (cadena.indexOf(texto.substr(contador, 1),0) == -1){
mailres = false;
break;
}
}
if ((arroba > 1) && (arroba + 1 < punto) && (punto + 1 < (texto.length)) && (mailres == true) && (texto.indexOf("..",0) == -1))
mailres = true;
else
mailres = false;
return mailres;
}
function validarForm()
{
if(window.document.formulario.Nombre.value == ''){
window.alert("Debes introducir tu nombre");
window.document.formulario.Nombre.focus();
return 0;
}
email = window.document.formulario.Email.value;
mailCorrecto = mail(email);
if(!mailCorrecto){
window.alert("Debes introducir un email válido");
window.document.formulario.Email.focus();
return 0;
}
if(window.document.formulario.Texto.value == ''){
window.alert("Debes introducir algo en el área de texto");
window.document.formulario.Nombre.focus();
return 0;
}
window.alert("Formulario enviado con éxito");
window.document.formulario.submit();
}
//-->
</script>
</head>
<body>
<div id="formulario">
<H1> Formulario de Contacto </H1>
<br><br>
<form name="formulario" action="mail_to:mi_email" method="post" enctype="text/plain">
<br>
<label>Nombre: <input type="text" name="Nombre" size="30" maxlenght="25"></label>
<br>
<label>Email: <input type="text" name="Email" size="50" maxlenght="45"></label>
<br><br><br>
<!-- Podriamos poner en java la opcion de decidir si van a poner una opinion, una queja, una duda...
y según lo que elijan que salga una caja de texto diferente-->
Seleccione una opción:
<br>
<input type="radio" name="Tipo" value="opinion" onClick="text(1)"> Opinión
<br>
<input type="radio" name="Tipo" value="queja" onClick="text(2)"> Queja
<br>
<input type="radio" name="Tipo" value="duda" onClick="text(3)"> Duda
<br><br>
<br>
<textarea name="Texto" rows="13" cols="75" wrap="soft"></textarea>
<br><br><br>
<input type="button" value="Enviar" onClick="validarForm()"><input type="button" value="Borrar" onClick="window.document.formulario.reset()">
</form>
</div>
</body>
</html>
Muchas gracias por la ayuda!