0
Я добавил всплывал форму для подписки на электронную почту, и он дважды посылает по представлению и подтверждающее сообщение также отображается дваждыКонтактная форма подачи дважды
Вот код:
$(document).ready(function() {
$(".modalbox").fancybox();
$("#contact").submit(function(e) {
e.preventDefault();
var emailval = $("#email").val();
var mailvalid = validateEmail(emailval);
if(mailvalid == false) {
$("#email").addClass("error");
}
else if(mailvalid == true){
$("#email").removeClass("error");
}
if(mailvalid == true) {
// if both validate we attempt to send the e-mail
// first we hide the submit btn so the user doesnt click twice
$("#send").replaceWith("<em>sending...</em>");
$.ajax({
type: 'POST',
url: 'sendmessage.php',
data: $("#contact").serialize(),
success: function(data) {
if(data == "true") {
$("#contact").fadeOut("fast", function(){
$(this).before("<p><strong>Success! You have signed up for a trial. A member of our team wil soon be in contact :)</strong></p>");
setTimeout("$.fancybox.close()", 1700);
});
}
}
});
}
});
});
Большое спасибо! Сначала это не сработало, и я смотрел в Интернете раньше и видел несколько людей, которые положили e.stopImmediatePropagation(); под e.preventDefault(); и это сработало для меня. Еще раз спасибо :) – Ashton
Пожалуйста, не забудьте проголосовать и принять ответ, если он решит вашу проблему. :) –