Tam bir Javascript biçiminde, varsayılanı engelledikten sonra formu gönderebilirsiniz.
Bunun nedeni HTMLFormElement.submit() hiç aramazonSubmit() . Bu nedenle, formu burada özel bir gönderme işleyicisi yokmuş gibi göndermek için bu spesifikasyon tuhaflığına güveniyoruz.
var submitHandler = (event) => {
event.preventDefault()
console.log('You should only see this once')
document.getElementById('formId').submit()
}
Eşzamanlı bir istek için bu kemana bakın .
Eşzamansız bir isteğin tamamlanmasını beklemek de aynı derecede kolaydır:
var submitHandler = (event) => {
event.preventDefault()
console.log('before')
setTimeout(function() {
console.log('done')
document.getElementById('formId').submit()
}, 1400);
console.log('after')
}
Eşzamansız bir istek örneği için kemanıma bakabilirsiniz .
Ve eğer vaatlerde bulunursan:
var submitHandler = (event) => {
event.preventDefault()
console.log('Before')
new Promise((res, rej) => {
setTimeout(function() {
console.log('done')
res()
}, 1400);
}).then(() => {
document.getElementById('bob').submit()
})
console.log('After')
}
Ve işte bu istek .