我有以下提交表单的代码:
$('form').submit(function () {
...
}
我想在输入此提交事件之前等待用户约2秒钟。 可能吗?也许是提前事件?
感谢。
答案 0 :(得分:1)
尝试:
$('form').submit(function (e) {
setTimeout(function() {
$(this).submit();
}, 2000);
e.preventDefault();
}
使用e.preventDefault()取消表单的默认行为(例如,提交)。然后创建一个执行真实提交的超时。
也许你应该设置一个标志,因为使用.submit()可能会触发你正在听的“提交”事件。如果是这样,请尝试:
var attach_timeout = true;
$('form').submit(function (e) {
if (attach_timeout) {
setTimeout(function() {
$(this).submit();
}, 2000);
attach_timeout = false;
e.preventDefault();
}
}