1 回答
TA贡献1853条经验 获得超9个赞
您可以使用标志来检查时差。用户单击提交按钮后,您可以将时间存储在变量中。如果用户再次单击提交按钮,请检查当前时间和上次提交时间(存储在变量中)之间的差异。如果时间差小于 60 秒,则显示警报消息,否则执行发布请求。
var submissionTime = undefined;
form.addEventListener('submit', (e) => {
e.preventDefault();
var flag = true;
if(submissionTime) {
var milliseconds = new Date().getTime() - submissionTime.getTime();
var seconds = Math.abs(milliseconds / 1000);
if(seconds < 61) {
flag = false;
// show the alert
}
}
if(flag) {
submissionTime = new Date();
const choice = document.querySelector('input[name=os]:checked').value;
const data = {os:choice}
fetch('localhost:3000/poll', {
method: 'post',
body: JSON.stringify(data),
headers: new Headers({
'Content-Type': 'application/json'
})
})
.then(res => res.json())
.then(data => console.log(data))
// alert("Danke für die Abstimmung")
.catch(err => console.log(err));
}
});
添加回答
举报