<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
<title>开始考试</title>
<link href="student/images/css2.css" rel="stylesheet" type="text/css"/>
<style type="text/css">
<!--
.STYLE3 {font-size: 18px; }
.STYLE4 {font-size: 18px; font-weight: bold; }
.STYLE5 {color: #FF0000}
-->
</style>
<script type="text/javascript">
1 var ksTime; //定义考试时间以分钟计算
16 ksTime = 60;//设置时间 这里设置为0.1代表是6秒,测试用
17 if(readCookie("ss")=="")
18 {
19 setCookie("ss",new Date(),ksTime/60);
20 }
21 function sT()
22 {
23 var tti = new Date();
24 var lt = parseInt((tti-new Date(readCookie("ss")))/1000)
25 if((ksTime*60-lt)<0)
26 {
27 setCookie("ss",new Date(),0);
28 alert("考试时间到!\n即将提交试卷!");
29 document.forms[0].submit();
30 }
31 else
32 {
33 lm = Math.floor(lt / 60);
34 ls = lt % 60;
35 allY = ksTime*60-lt;
36 ym = Math.floor(allY / 60);
37 ys = allY % 60;
38 document.getElementById("tTime").innerHTML = "考试已经开始了" + lm + "分" + ls + "秒" + ",剩余" + ym + "分" + ys + "秒";
39 var ttt = setTimeout("sT()",1000);
40 }
41 }
42 function readCookie(name)
43 {
44 var cookieValue = "";
45 var search = name + "=";
46 if(document.cookie.length > 0)
47 {
48 offset = document.cookie.indexOf(search);
49 if (offset != -1)
50 {
51 offset += search.length;
52 end = document.cookie.indexOf(";", offset);
53 if (end == -1)
54 end = document.cookie.length;
55 cookieValue = document.cookie.substring(offset, end)
56 }
57 }
58 return cookieValue;
59 }
60 function setCookie(name, value, hours)
61 {
62 var expire = "";
63 if(hours != null) {
64 expire = new Date((new Date()).getTime() + hours * 3600000);
65 expire = "; expires=" + expire.toGMTString();
66 }
67 document.cookie = name + "=" + value + expire;
68 }
69 </script>
</head> <body onload="sT()">
<table width="1003" height="485" border="0" cellpadding="0" cellspacing="0" class="centerbg">
<tr>
<td width="149" height="485">&nbsp;</td>
<td width="741" valign="top" class="rightbian">
<form action="submitExam.action" method="post">
<table width="98%" border="0" align="center" cellpadding="0" cellspacing="10">
<tr>
<td><div align="center" class="STYLE3">考试时间:60 分钟</div></td>
<td><div align="center" class="STYLE3">考生:${sessionScope.student.name}</div></td>
<td><div align="center" class="STYLE3">总分 :100 分</div></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><div id="tTime"></div></td>
<td>&nbsp;</td>
</tr>
<tr>
<td colspan="3" bgcolor="#999999" class="STYLE4">选择题(每小题5分,共10个)</td>
</tr>
<!--题目开始--> <s:iterator value="#request.ChoiceQuestion" var="cq" status="sta">
<tr>
<td colspan="3"><strong>第<span class="STYLE5">${sta.index + 1}</span>题&nbsp;${cq.c_question}</strong> </td>
</tr>
<tr>
<td colspan="3"><strong>A.</strong>${cq.c_choiceA}</td>
</tr>
<tr>
<td colspan="3"><strong>B.</strong>${cq.c_choiceB}</td>
</tr>
<tr>
<td colspan="3"><strong>C.</strong>${cq.c_choiceC}</td>
</tr>
<tr>
<td colspan="3"><strong>D.</strong>${cq.c_choiceD}</td>
</tr>
<tr>
<td height="32" colspan="3" bgcolor="#CCCCCC">选择答案:
<input type="hidden" name="c_answer1${sta.index}" value="${cq.c_answer}"/>
<input type="radio" name="c_answer${sta.index}" value="A" checked="checked"/>
A
<input type="radio" name="c_answer${sta.index}" value="B" />
B
<input type="radio" name="c_answer${sta.index}" value="C" />
C
<input type="radio" name="c_answer${sta.index}" value="D" />
D</td>
</tr>
</s:iterator>
<tr>
<td colspan="3" bgcolor="#999999" class="STYLE4">填空题(每小题5分,共10个)</td>
</tr>
<s:iterator value="#request.FillQuestion" var="fq" status="stf">
<tr>
<td colspan="3"><strong>第<span class="STYLE5">${stf.index + 11}</span>题&nbsp;${fq.f_question}</strong> </td>
</tr> <tr>
<td height="32" colspan="3" bgcolor="#CCCCCC">输入答案:
<input type="hidden" name="f_answer1${stf.index}" value="${fq.f_answer}"/>
<input type="text" name="f_answer${stf.index}" size="40"/></td>
</tr>
</s:iterator>
<!--题目结束-->
<tr>
<td colspan="3"><div align="center">
<input type="submit" value=" 提交答卷 " name="Submit" />
</div></td>
</tr>
</table>
</form>
</td>
<td width="113">&nbsp;</td>
</tr>
</table>
</body>
</html>

设置cookie倒计时让让表单自动提交的更多相关文章

  1. 按下enter键后表单自动提交问题

    在HTML的form表单里,按下enter键之后,默认情况下表单会自动提交. 在公司一个项目里,按下enter键自动提交表单的查询结果与按下搜索框的搜索结果页面显示不一样,按下搜索按钮之后是通过Aja ...

  2. Html 中表单提交的一些知识总结——防止表单自动提交,以及submit和button提交表单的区别

    转自:http://jackaudrey.blog.163.com/blog/static/1314217882010590041833/ 在页面中有多个input type="text&q ...

  3. chrome、firefox表单自动提交诱因 -- 非type=hidden的单输入域(input)

    开发任务中遇到很费解的一个form自动提交问题,form中只有一个input时回车会触发自动提交表单,当在多一个非type=hidden的input时,又不会出现表单自动提交. 代码示例: 会出现自动 ...

  4. FORM中使用onSubmit="return false"防止表单自动提交,以及submit和button提交表单的区别

    在页面中有多个input type="text"的文本输入框的情况下没有问题,但是当页面中有只有一个文本框的情况下(),就会出现此问题. 后来在form 中添加:onsubmit= ...

  5. 遇到的一个Form表单自动提交问题解决办法

    Form 表单中只有一个 input 元素时按回车会默认提交表单.有的时候我们希望按回车可以进行列表查询,但是查询后表单被自动提交了,然后刷新了整个页面.这个时候就需要对这个 Form 表单处理一下以 ...

  6. 按Enter键后Form表单自动提交的问题

    怪事年年有,今年特别多. 话说,最近项目中遇到一件怪事,当我鼠标focus在文本框中,轻轻敲了下回车键,尼玛页面突然刷新了,当时把宝宝给吓得. 接下来就是一番苦逼的烧脑和蛋疼~ 一.被表象所迷惑 突然 ...

  7. form表单自动提交

    form表单提交是web项目中经常遇到的,但是如果form中只有一个input为text类型的输入框时, 需要格外注意,因为这时候只要你按下回车键,form表单就会自动提交,这是form表单的一个特性 ...

  8. form表单中只有一个input时,按回车键后表单自动提交(form表单的一个小坑)

    form中只有一个input按回车键表单会自动提交 在一个form表单中,若只有一个input,按回车键表单会自动提交,但是当表单中存在多个input时,按回车键不会执行任何操作,这是form表单的一 ...

  9. ajax防止表单自动提交

    重写表单的checkForm方法,并用if和else解决异步判断的问题. function checkForm(){ 1 var flag = false; $.ajaxSetup({async : ...

随机推荐

  1. xcode 工具 alcatraz---备用

    简介 Alcatraz 是一个帮你管理 Xcode 插件.模版以及颜色配置的工具.它可以直接集成到 Xcode 的图形界面中,让你感觉就像在使用 Xcode 自带的功能一样. 安装和删除 使用如下的命 ...

  2. Kent Beck揭秘Facebook开发部署流程

    http://www.infoq.com/cn/news/2013/10/facebook-development-deployment Facebook是世界上最大的社交网站,有超过10亿用户每月至 ...

  3. 【Java】Java网络编程菜鸟进阶:TCP和套接字入门

    Java网络编程菜鸟进阶:TCP和套接字入门 JDK 提供了对 TCP(Transmission Control Protocol,传输控制协议)和 UDP(User Datagram Protoco ...

  4. Oracle OCI-22053:溢出错误

    Oracle 数值数据类型最多可存储 38 个字节的精度.当将 Oracle 数值转换 为公共语言运行库数据类型时,小数点后边的位数可能过多,这会导致此错误.   查询29万笔数据,报此错误,分析应该 ...

  5. n数码问题, 全排列哈希

    转载了一篇关于全排列的哈希函数,Poj1077就是应用了全排列的哈希: 我们经常使用的数的进制为“常数进制”,即始终逢p进1.例如,p进制数K可表示为    K = a0*p^0 + a1*p^1 + ...

  6. Delhpi TdxComponentPrinter怎样联上dxdbgrid中的数据打印

    有谁知道TdxComponentPrinter怎样联上dxdbgrid中的数据打印?         有谁知道TdxComponentPrinter怎样联上dxdbgrid中的数据打印?   回复人: ...

  7. wchar_t与char、wstring与string的相互转换

    个人倾向于使用优秀的开源库做这个. 最近使用boost进行转换,代码极其简单: boost::filesystem::path src(wchar_t); char = src.string().c_ ...

  8. 简单的FOLLOW集演示程序

    /* * 该程序用于计算某个非终结符的 FOLLOW 集合 * RexfieldVon * 2013年6月30日16:02:47 */ #include <stdio.h> #includ ...

  9. Virtualization API之libvirt

    The virtualization API 之开源 libvirt探究 By Ruiy: libvirt supports Hypervisors(注,相关的hypervisors项目的权威网站已经 ...

  10. Apache-Tika解析JPEG文档

    通常在使用爬虫时,爬取到网上的文章都是各式各样的格式处理起来比较麻烦,这里我们使用Apache-Tika来处理JPEG格式的图片,如下: package com.mengyao.tika.app; i ...