检查调查是否在过去5分钟内完成

时间:2018-09-24 08:15:13

标签: javascript jquery html

我正在创建一个调查,如果该调查在过去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/

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

2 个答案:

答案 0 :(得分:0)

您是否尝试在用户开始填写调查时设置超时。您可以使用setTimeout(check_if_filled(), 300000);,其中check_if_filled是在5分钟(300000毫秒)后触发的函数。如果每个字段都已填写,则可以使变量为true;如果某些字段为空,则可以将其保留为false。当用户按下“完成”按钮时,它将触发一个函数,该函数检查变量是true还是false并执行您需要执行的操作。

答案 1 :(得分:0)

在女巫中存储completiondate的方式与在jsfiddle中使用的方式不同。您应该更改jsfiddle中使用的正则表达式,或者将HTML的时间格式更改为类似于jsfiddle中的格式。