.net在线考试C#计时器问题
我想点击开始考试,然后考试时间后面的Lable倒计时20分钟,20分钟之后强制性交卷。求解决方法。小弟无尽感激。我其实是想求代码的~!!不过仍然感谢各位的回答。...
我想点击开始考试,然后 考试时间后面的Lable倒计时20分钟,20分钟之后强制性交卷。
求解决方法。小弟无尽感激。
我其实是想求代码的~!!不过仍然感谢各位的回答。 展开
求解决方法。小弟无尽感激。
我其实是想求代码的~!!不过仍然感谢各位的回答。 展开
4个回答
展开全部
可以这样三个思路(由于我这电脑没安装VS也不好给你直接发代码就给思路把)
当考生点击了开始考试的时候
有2种方法
1.就激活20分钟的倒计时用timer。每隔一秒就通过ajax把时间传到前台。服务器的timer时间完就就交卷submit()或转向页面或隐藏层怎么都行看你怎么算交卷。
(人一多服务器的负荷就异常的大)
2.可以在考生点击考试之后就记录服务器时间。然后把时间传给前台。在前台倒计时。然后每隔一段时间用ajax去取应该得到的倒计时时间。到前台进行倒计时。
(也是负荷问题和数据库的交互太频繁)
3.在服务器中设置该考生已经开始考试 并在通过前台的脚本处理中倒计时(可以用setTimeout(处理函数,时间间隔)或setInterval(处理函数,时间间隔)等.. )
在处理函数里面应该包含一个倒计时 和判断是否到倒计时结束的逻辑。如果到了就通过ajax传到后台 考试结束。
这样还需要加一个参数(用于判断是否已经开始考试如果是已经开始考试的这个人),再一次进入页面或退出就交卷。
其实这方法都差不多。我觉得最能解决问题的:加一个参数(用于判断是否已经开始考试如果是已经开始考试的这个人),再一次进入页面或退出就交卷。
这么一来可以放心的把很多事情交给客户端了。一般来说尽量能在客户端完成的就交给客户端。毕竟服务器很多人用 客户端就一个人用。
当考生点击了开始考试的时候
有2种方法
1.就激活20分钟的倒计时用timer。每隔一秒就通过ajax把时间传到前台。服务器的timer时间完就就交卷submit()或转向页面或隐藏层怎么都行看你怎么算交卷。
(人一多服务器的负荷就异常的大)
2.可以在考生点击考试之后就记录服务器时间。然后把时间传给前台。在前台倒计时。然后每隔一段时间用ajax去取应该得到的倒计时时间。到前台进行倒计时。
(也是负荷问题和数据库的交互太频繁)
3.在服务器中设置该考生已经开始考试 并在通过前台的脚本处理中倒计时(可以用setTimeout(处理函数,时间间隔)或setInterval(处理函数,时间间隔)等.. )
在处理函数里面应该包含一个倒计时 和判断是否到倒计时结束的逻辑。如果到了就通过ajax传到后台 考试结束。
这样还需要加一个参数(用于判断是否已经开始考试如果是已经开始考试的这个人),再一次进入页面或退出就交卷。
其实这方法都差不多。我觉得最能解决问题的:加一个参数(用于判断是否已经开始考试如果是已经开始考试的这个人),再一次进入页面或退出就交卷。
这么一来可以放心的把很多事情交给客户端了。一般来说尽量能在客户端完成的就交给客户端。毕竟服务器很多人用 客户端就一个人用。
展开全部
放一个timmer 计算当前的值,设置他为一秒已记录,当该值达到60*20的时候就调用交卷功能的方法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个我还真做过,倒计时很好做,你面临的问题主要应该是:
1、刚开始的参数如何处理?可以由服务器直接发送。
2、时间到了如何交卷?用ajax技术
3、如何避免用户刷新?还是ajax技术每隔一段时间自动和数据库联系一次。
1、刚开始的参数如何处理?可以由服务器直接发送。
2、时间到了如何交卷?用ajax技术
3、如何避免用户刷新?还是ajax技术每隔一段时间自动和数据库联系一次。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
ajax 先托一个scriptmanager 后面再放一个timer
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询