首页 > 解决方案 > 检查调查是否在过去 5 分钟内完成

问题描述

我正在创建一个调查,如果它在过去 5 分钟内完成,它应该重定向到结果页面,但如果 5 分钟后,您想再次重做,您可以再次访问调查,而无需重定向。

单击“完成”按钮时,它会将您带到调查的开头,并输出以下内容:

var surveyprogress_1 = 
    {"survey": { 
    "id": 1, 
    "title": "Find your power animal", 
    "shortname": "poweranimal", 
    "completiondate": "2018-07-25T09:41:41.06Z",  //When it was filled
    "iscomplete": true
}}; 

所以要检查它是否在过去 5 分钟内被填满,我需要将它与completiondate

为了消除时区/比较问题,我已将其设置为日期以 UTC 时间显示。因此,该脚本在进行任何比较之前将其本地时间转换为 UTC。

问题是无论我尝试什么,我都无法让它工作。

我试过的代码:https ://jsfiddle.net/3otxbemd/15/

它在那里工作,但不在我的调查中

标签: javascriptjqueryhtml

解决方案


您是否尝试在用户开始填写调查时设置超时。您可以使用setTimeout(check_if_filled(), 300000);where check_if_filled 是一个在 5 分钟(300000 毫秒)后触发的函数。如果每个字段都已填充,它可以使变量为真,如果某些字段为空,它可以保持为假。当用户按下“完成”按钮时,它应该触发一个函数来检查变量是真还是假,并执行你需要它做的事情。


推荐阅读