Versuchen mit:
$('form').submit(function (e) {
setTimeout(function() {
$(this).submit();
}, 2000);
e.preventDefault();
}
Mit e.preventDefault() abbrechen Sie das Standardverhalten der Form (einreichen, zum Beispiel). Dann erstellen Sie eine Zeitüberschreitung, die die tatsächliche Übermittlung ausführt.
Vielleicht sollten Sie eine Markierung setzen, weil die Verwendung von .submit() das Ereignis "submit" auslösen kann, das Sie gerade hören. Wenn ja, versuchen Sie mit:
var attach_timeout = true;
$('form').submit(function (e) {
if (attach_timeout) {
setTimeout(function() {
$(this).submit();
}, 2000);
attach_timeout = false;
e.preventDefault();
}
}
Was meinst du mit "warte den Benutzer"? Sie möchten die Formularübertragung für zwei Sekunden verschieben und dann absenden? –
Ja, ich möchte zwei Sekunden warten, bevor ich mich einschicke. – Bronzato
Ja, es ist möglich, aber ich bin neugierig ** warum ** Sie wollen es tun. Scheint völlig unnötig - und möglicherweise verwirrend für den Benutzer - für mich. –