
Problema con el javascript de un formulario
Publicado por Jordi Soria (1 intervención) el 21/11/2016 22:40:17
Hola buenos días, estoy liado con el JavaScript que valida un formulario antes de enviar, los campos que debo validar antes de enviar el formulario son nombre, email o teléfono y la consulta a realizar...
(Nota: el texto esta en catalán)
JavaScript: (uso jquery a nivel básico mientras voy aprendiendo)
y el HTML:
Hasta aquí el código, lo que no se es porque no envía el formulario... en cuanto quito las comprobaciones de email o de teléfono me sale el alert de la consulta (motiu) y en cuanto escribo algo funciona el formulario y el php me recibe los datos bien... pero con el código tal cual escrito no me funciona... debe ser algún condicional del if o else mal puesto pero no lo veo... Muchas gracias por todo.
(Nota: el texto esta en catalán)
JavaScript: (uso jquery a nivel básico mientras voy aprendiendo)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<script type="text/javascript">
function validarFormulari()
{
var consulta, nom, telf, email, tipusconsulta, motiu, resultat, expr, contacte;
nom = $("#nom").val();
telf = $("#telf").val();
email = $("#email").val();
motiu = $("#motiu").val();
contacte = $("#consulta");
expr = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
if (nom === "")
{
alert("No s'oblidi d'incloure el nom.");
}
else if (email === "" && telf === "")
{
alert("No s'oblidi d'incloure el seu telefón o el seu correu electrónic per a poder contactar amb voste.");
}
else if (email != "" || telf != "")
{
if (email != "")
{
if (!expr.test(email))
{
alert("El format del seu correu electrónic es incorrecte, siusplau revisi el format, el format ha de ser com el següent: exemple@hotmail.com");
}
}
else if (telf != "")
{
if (!/^([0-9])*$/.test(telf))
{
alert("Ha de introduïr el seu telefon amb numeros.");
}
}
}
else if (motiu === "")
{
alert("No s'oblidi d'incloure la consulta que vol realitzar.");
}
else
{
contacte.submit();
}
}
y el HTML:
1
2
3
4
5
6
7
8
<form action="index.php" method="post" name="contacte" onSubmit="validarFormulari();return false;">
Nom y Congnoms: <input type="text" name="nom" id="nom"><br />
Forma de contacte: Teléfon: <input type="text" name="telf" id="telf" size="9"> o Correu electrónic: <input type="text" name="email" id="email">
<br />
Expliqui el motiu de la consulta: <br /><textarea name="motiu" id="motiu" rows="10"></textarea>
<input type="submit" id="consulta" name="consulta" value="Enviar la consulta">
<input type="reset" id="borrar" name="borrar" value="Borrar la consulta">
</form>
Valora esta pregunta


0