Warum wird mein Formular nicht nur einmal eingereicht? Manchmal sende es es etwa 2-3-4-5 mal, und ich bekomme 2-3-4-5 email, dass eine neue Nachricht von der Seite gesendet wird.Ajax Formular mehr als einmal senden
Warum funktioniert hier nicht die Schaltfläche deaktiviert? Was soll ich tun?
$("#AjanlatKeresBtn").click(function() // This opens the modal only
{
$('#AjanlatResult').hide();
$("#AjanlatModal").modal("show");
$('#AjanlatForm').on('submit', function(e)
{
$('#kerdesButton').prop('disabled', true);
e.preventDefault();
var FormErros = [];
var AjanlatNev = $('#AjanlatNev').val();
var AjanlatEmail = $('#AjanlatEmail').val();
var AjanlatTel = $('#AjanlatTel').val();
var AjanlatCim = $('#AjanlatCim').val();
var AjanlatMennyiseg = $('#AjanlatMennyiseg').val();
var AjanlatUzenet = $('#AjanlatUzenet').val();
var AjanlatTermekID = $('#AjanlatTermekID').val();
if($.trim(AjanlatNev) == "") { FormErros.push("Nem adta meg a nevét."); }
if($.trim(AjanlatEmail) == "") { FormErros.push("Nem adta meg az e-mail címét."); }
if(AjanlatEmail != ""){if(validate_Email(AjanlatEmail) == false){FormErros.push("Elképzelhető, hogy hibásan adta meg az e-mail címét.");}}
if($.trim(AjanlatTel) == "") { FormErros.push("Nem adta meg a telefonszámát."); }
if($.trim(AjanlatUzenet) == "") { FormErros.push("Nem írt semmilyen kérdést vagy üzenetet."); }
if($.trim(AjanlatTermekID) == "") { FormErros.push("Hiányzik a termék ID."); }
if(AjanlatTermekID != ""){if(!$.isNumeric(AjanlatTermekID)){FormErros.push("A termék ID nem szám típusú.");}}
if($.trim(AjanlatCim) == "") { FormErros.push("Nem adta meg a szállítási címet."); }
if($.trim(AjanlatMennyiseg) == "") { FormErros.push("Nem adta meg a termék(ek) mennyiségét."); }
if(FormErros.length == 0)
{
$.ajax({
type: 'POST',
cache: false,
data: $('#AjanlatForm').serialize(),
url: 'files/uj-ajanlatkeres.php',
success: function(data)
{
$('#kerdesButton').hide();
$('#AjanlatForm')[0].reset();
location.href = "<?php echo $host; ?>/uzenet/uj-ajanlatkeres";
}
});
}
else
{
$('#kerdesButton').prop('disabled', false);
$('#AjanlatResult').fadeIn("slow").html('<div class="javascript_rror_div">'+(FormErros.join('<br/>'))+'</div>');
}
});
e.stopPropagation();
});
Du fügst einen neuen einreichen Handler mit jedem Klick auf '#AjanlatKeresBtn ' – Andreas
#AjanlatKeresBtn öffnet nur das Modal. Was würdest du mit dem Code machen? – Dave599
Und '$ ('# AjanlatForm') on ('submit', function (e) {...})' fügt einen neuen Submit-Handler für jede "Öffnung" des Modales hinzu – Andreas