Les describo el formulario:
Tiene 4 campos.
tres input que son:
-nombre
-asunto
un text area que es:
-mensaje
Una div llamada btn_enviar que actúa de botón.
Una div llamada resultados cuyo texto cambia de acuerdo a la validación.
Ahora el problema:
Cuando presiono btn_enviar, el código se ejecuta pero el texto de resultados me dice que el email es inválido. probé sacando la linea del email para ver si el problema estaba en esa parte del código, pero el texto pasó a decirme que el campo nombre estaba vacio. (cuando no lo está)
por qué javascript no respeta los condicionales?
aquí dejo el código javascript:
Código PHP:
$(document).ready(inicializarEventos);
function inicializarEventos(){
$("#btn_enviar").click(presionSubmit);
}
function presionSubmit()
{
var errores = 0;
$("#resultados").html("");
var n = $("#nombre").attr("value");
var e = $("#email").attr("value");
var a = $("#asunto").attr("value");
var m = $("#mensaje").attr("value");
var RegExPattern1 = /[a-z]/;
var RegExPattern2 = /(w[-._w]*w@w[-._w]*w.w{2,3})/;
var RegExPattern3 = /[0-9]/;
if ( !n.match(RegExPattern1) ) {
errores++;
$("#resultados").html("Error, sólo caracteres...");
}
if ( n == "" ) {
errores++;
$("#resultados").html("Error, nombre vacio...");
}
if ( !a.match(RegExPattern1) ) {
errores++;
$("#resultados").html("Error, sólo caracteres...");
}
if ( a == "" ) {
errores++;
$("#resultados").html("Error, asunto vacio...");
}
if ( !e.match(RegExPattern2) ) {
errores++;
$("#resultados").html("Error, no es un e-mail válido...");
}
if ( m == 0 ) {
errores++;
$("#resultados").html("Error, ingrese su mensaje...");
}
if ( errores == 0 ) {
$.post("#resultados",{nombre:n, email:e, mensaje:m, asunto:a}, llegadaDatos);
}
return false;
}
function llegadaDatos(datos)
{
$("#resultados").html(datos);
}