为了防止意外提交并确保用户仔细检查他输入的所有信息,我通过弹出另一个按钮来延迟提交表单,询问他是否真的要提交......
不幸的是,当用户单击“否”并稍后使用“是”按钮提交表单时,它将提交两次。当用户之前没有点击“否”时,它第一次工作......
我在这里准备了一个小jsfiddle,这就是我的代码:
$('#form').on('click','#submitbutton',function(e){
e.preventDefault()
$('#formchecker').show()
$('#doit').click(function(e2){
e2.preventDefault()
alert('I will submit as you say')
})
$('#dont').click(function(e2){
e2.preventDefault()
$('#formchecker').hide()
})
})
您可以看到,在提交之前单击“nah”时选择“是”,会有多个警报框。有人暗示为什么它会这样?