我设置了一个计时器,它将自动单击提交按钮。
用户也可以按它。
两者可以同时触发吗?
我可以在单击后禁用该按钮,但如果用户单击它并且我禁用它,似乎调用 $("#btn").click()
仍然有效。
我用谷歌搜索了这个问题,但找不到这样的问题。
上下文:为了防止 session 过期,我想在负载过重的预订网站 5 分钟后以编程方式提交表单。当我这样做时,用户也可以偶然按下提交按钮吗?
代码
setTimeout(function (){ $("#btn").click()}, 5*60000); //click after 5 minutes
//这将导致页面重新加载
最佳答案
Can both be triggered at the same time?
是的,禁用和触发是两个不同的事情。
当您禁用按钮时,这将仅阻止用户通过按下该按钮来触发点击。但是,程序化点击触发器将仍然执行所有相关事件。
为了防止后续点击处理程序执行,最简单的方法是使用 one()喜欢
$(document).one('click', '#btn', function(){...});
这将在click
事件最多执行一次后解除绑定(bind)
。
关于javascript - 用户和脚本可以单击提交按钮两次吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30669102/