gpt4 book ai didi

jquery - 使用 jQuery 提交会发生两次

转载 作者:行者123 更新时间:2023-12-01 06:28:40 24 4
gpt4 key购买 nike

为了防止意外提交并确保用户仔细检查他输入的所有信息,我通过弹出另一个按钮来延迟表单的提交,询问他是否真的要提交...

不幸的是,当用户单击“否”并稍后使用"is"按钮提交表单时,它将提交两次。当用户之前没有单击“否”时,它第一次起作用...

我准备了一点jsfiddle here ,这就是我的代码:

$('#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()
})
})

您可以看到,在使用"is"提交之前单击“nah”时,将会出现多个警报框。有人得到了为什么它会这样的提示吗?

最佳答案

每次单击“提交”按钮时,您都会向"is"和“否”按钮添加单击事件,但您永远不会清除它们,因此如果您单击“提交”然后单击“否”5 次,最后单击"is"将触发 5 次。

在绑定(bind)新的点击事件之前,您应该取消绑定(bind)点击事件,或者不要在提交按钮的点击事件中绑定(bind)点击事件。

关于jquery - 使用 jQuery 提交会发生两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11440421/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com