jQuery阻止表單預設提交行為後,要繼續進行提交行為,怎麼做?
具體是這樣的:
一個刪除按鈕,在提交之前用sweetalert2提示一下,當按下提示框中的「確認」按鈕後,繼續提交表單。
html程式碼:
<form action="/articles/{{ $article->id }}" method="POST">
{{ method_field('DELETE') }}
{{ csrf_field() }}
<input class="btn btn-danger btn-sm need-alert" type="submit" value="删除">
</form>
js程式碼:
<script>
$('.need-alert').on('click', function (event) {
//阻止默认提交事件
event.preventDefault();
//sweetalert2的提示框代码:
swal({
title: '确定要删除吗?',
text: '删除后不能恢复!',
type: 'warning',
showCancelButton: true,
confirmButtonColor: '#3085d6',
cancelButtonColor: '#d33',
confirmButtonText: '确认删除'
}).then(function () {
}).catch(swal.noop);
})
</script>
preventDefault()阻止預設提交事件後,sweetalert2提示框可以正常彈出。
問題:
當點擊sweetalert2提示框的「確認刪除」後,要繼續提交這個表單,要怎麼寫?
給按鈕綁定點擊事件,在事件的回調函數中實現彈窗,並判斷用戶選擇的彈窗值,為真則獲取表單元素觸發提交事件
$("form").submit()
不為真則做其他相應處理
講道理,input的type寫成submit讓你需要額外寫阻止預設事件,type改成button,就不用阻止預設事件了。你的確認框應該是有回呼函數的,或許就是then裡面,直接寫投稿應該可以的
雷雷