Buenos días gente soy nuevo en el foro.
Les comento me baje un template que trae un formulario de contacto aparentemente en jquery (que poco entiendo de esto) y el tema es que no logro hacerlo andar. El formulario avisa correctamente cuando alguien no pone su nombre, o no pone un mensaje, o su e-mail, pero cuando ingresas todo como corresponde y tocas el boton submit no pasa nada.
Bueno les dejo el código haber donde está fallando o que es lo que hace falta.
- El código en la web HTML:
Código:
<h3 class="contactTitle">Formulario de contacto:</h3>
<!-- custom form messages start -->
<span class="error" id="nameError">Porfavor ingresa tu nombre </span> <span class="error" id="emailError">Porfavor ingresa tu e-mail </span> <span class="error" id="emailError2">Please ingresa un e-mail valido </span> <span class="error" id="messageError">Porfavor ingresa tu mensaje </span>
<div class="contactSuccessMessage"> <img src="images/ok.png" alt=""/>
<h4>Gracias por contactarnos.</h4>
</div>
<!-- custom form messages end -->
<!-- contact form start -->
<div class="contactForm" id="contactForm">
<form id="contact">
<fieldset>
<label for="contactName" id="name_label">Name (required)</label>
<input type="text" name="contactName" id="contactName" size="30" value="" class="text-input" />
<label for="contactEmail" id="email_label">Email (required)</label>
<input type="text" name="contactEmail" id="contactEmail" size="30" value="" class="text-input" />
<label for="contactSubject" id="subject_label">Subject </label>
<input type="text" name="contactSubject" id="contactSubject" size="30" value="" class="text-input" />
<label for="contactMessage" id="message_label">Message (required)</label>
<textarea name="contactMessage" id="contactMessage" class="text-input"></textarea>
<p>
<input type="submit" name="submitMessage" class="contactButton" id="contactSubmitBtn" value=""/>
</p>
</fieldset>
</form>
</div>
<!-- contact form end -->
- El archivo JS Script dentro de una carpeta que contiene los archivos del sitio web.
Código:
jQuery(function() {
jQuery('.error').hide();
jQuery('.contactSuccessMessage').hide();
jQuery(".contactButton").click(function() {
// validate and process form
// first hide any error messages
jQuery('.error').hide();
var name = jQuery("input#contactName").val();
if (name == "") {
jQuery("span#nameError").fadeIn(500);
jQuery("input#contactName").focus();
return false;
}
var email = jQuery("input#contactEmail").val();
if (email == "") {
jQuery("span#emailError").fadeIn(500);
jQuery("input#contactEmail").focus();
return false;
}
var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
if(!emailReg.test(email)) {
jQuery("span#emailError2").fadeIn(500);
jQuery("input#contactEmail").focus();
return false;
}
var subject = jQuery("input#contactSubject").val();
var msg = jQuery("textarea#contactMessage").val();
if (msg == "") {
jQuery("span#messageError").fadeIn(500);
jQuery("textarea#contactMessage").focus();
return false;
}
var dataString = 'name='+ name + '&email=' + email + '&subject=' + subject + '&msg=' + msg;
//alert (dataString);return false;
jQuery.ajax({
type: "POST",
url: "php/mail.php",
data: dataString,
success: function() {
jQuery("#contactForm").hide();
jQuery(".contactSuccessMessage")
.fadeIn(1500);
}
});
return false;
});
});
Mi idea es que el formulario mande un email a la dirección
[email protected] con los datos ingresados en el formulario.
Gracias desde ya.
Saludos.