我需要检查表单是否提交了最后500毫秒。如果已提交,则阻止其提交。这是为了我的聊天,我需要阻止用户发送消息,如果他/她的最后一条消息是在最后500毫秒发送的。为了防止垃圾邮件,它每秒更多地使用2条消息。谢谢! :)
答案 0 :(得分:3)
试试这个:
var start= (new Date()).getTime();
...................
var now = (new Date()).getTime();
var diff = now - start;//diff should be in milis
答案 1 :(得分:3)
在提交处理程序中,存储上次提交的时间。每次用户提交表单时,请检查上次提交的时间与当前时间的对比。
如果<
使用event.preventDefault()
方法取消提交500毫秒。
$('yourForm').on('submit', function (e) {
var self = $(this);
var lastSubmission = self.data('last') || 0;
var now = (new Date()).getTime();
if (lastSubmission - now > 500) {
self.data('last', now);
} else {
e.preventDefault();
}
});