Die serverseitigen Methoden funktionieren, und die AJAX-Funktion setzt data-duplicated="false"
aber $this.submit();
funktioniert nicht. Um das Formular tatsächlich zu senden, muss ich den "summit" -Button erneut drücken.Ein Formular in einer AJAX-Funktion senden
<form data-url="/.../" data-duplicated="true" onsubmit="return checkForDuplicates(this)">
<!-- Form inputs -->
</form>
function checkForDuplicates(e) {
var $this = $(e);
var url = $this.attr('data-url');
if ($this.attr('data-duplicated') === 'true') {
$.ajax({
url: url,
type: 'POST',
data: data,
success: function (result) {
if (result === true) {
$this.attr('data-duplicated', 'false');
$this.submit();
} else {
// warrning
}
}
});
return false;
}
return true;
}
Was soll ich tun, um tatsächlich das Formular abschicken?
Versuchen Sie dies: '$ this [0] .submit();' –
Wenn Sie 'Ajax' verwenden, warum reichen Sie' Form' ein? – Rayon
@ IsmailRBOUH - das [0] .submit ist keine Funktion. – Bacchus