У меня есть форма, которая принимает данные, проверяется и, если все хорошо, я разрешаю запрос и открываю модальное окно, которое дает им возможность отменить (потому что для этого требуется ~ 2 секунды процесс с файлом).
mainForm.onsubmit = function() {
const title = document.getElementById('grow_journal_entry_title').value;
const notes = document.getElementById('grow_journal_entry_notes').value;
const file = document.getElementById('file').value;
// Check if the FILE was inputted, because the title and notes are HTML validated
if (title && notes){
if (file){
// display modal
modal.style.display = "block";
}
else {
// Focus on the #upload-button-area div.
document.getElementById('upload-button-area').focus();
alert("Please attach a photo to your journal entry.");
return false
}
}
}
Имеет смысл, но теперь вот как у меня есть функция «отмена».
cancelBtn.addEventListener('click', function(){
window.stop();
console.log('Cancel button clicked.');
modal.style.display = "none";
return false
});
Однако все работает, кроме , запрос по-прежнему проходит . Консоль выводит Cancel button clicked
, модальный закрывается, но по какой-то причине window.stop()
ничего не делает.
Я даже пытался сделать это:
<input id="cancelUpload" class="btn advance-btn sub-text-secondary btn-secondary-col" value="Cancel Upload" type="submit" onclick="stopSubmission()">
И:
function stopSubmission(){
try {
window.stop();
} catch (exception) {
document.execCommand('Stop');
}
console.log("Should have stopped.")
}