我正在创建一个调查,如果该调查在过去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/
它在那里工作,但不在我的调查中
答案 0 :(得分:0)
您是否尝试在用户开始填写调查时设置超时。您可以使用setTimeout(check_if_filled(), 300000);
,其中check_if_filled是在5分钟(300000毫秒)后触发的函数。如果每个字段都已填写,则可以使变量为true;如果某些字段为空,则可以将其保留为false。当用户按下“完成”按钮时,它将触发一个函数,该函数检查变量是true还是false并执行您需要执行的操作。
答案 1 :(得分:0)
在女巫中存储completiondate
的方式与在jsfiddle中使用的方式不同。您应该更改jsfiddle中使用的正则表达式,或者将HTML
的时间格式更改为类似于jsfiddle中的格式。