<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html> <html>
<head> <meta http-equiv="content-type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="styles/03.css">
<link rel="stylesheet" type="text/css" href="styles/02.css">
<script type="text/javascript" src="scripts/jquery-1.7.2.min.js"></script> <script>
var intervalId;
var t ;
var showTime; var startTime = <%=session.getAttribute("startTime")%>
var endTime = <%=session.getAttribute("endTime") %>
var nowTime = new Date().getTime();
var questionType ;
var answStr = "";
var singleStr = "";
var value ;
var mes ; $(function() { questionType = $("#queType").val();
if(endTime <= nowTime){
alert("考试时间到!系统将自动提交考卷");
examFinish();
return ;
} var seconds = Math.floor((endTime - nowTime)/1000);
t = seconds;
intervalId = setInterval("count()", 1000); //定义一个定时器
$("#timeCount").html(seconds); //显示当前的秒数
}); function count() {
t--; //秒数自减
if (t >= 0) {
if (t < 10) {
$("#timeCount").fadeOut(50, function() {
});
$("#timeCount").fadeIn(50, function() {
$("#timeCount").css("color", "#000");
});
}
if (t < 10) {
showTime = "0" + ('' + t);
} else {
showTime = t;
}
var mm = parseInt(t / 1000 / 60 % 60, 10);
var ss = parseInt(t / 1000 % 60, 10);
$("#timeCount").html(showTime); //刷新当前的秒数,重新显示秒数
document.cookie = "seconds=" + t;
if(showTime <= 0){
examFinish();
return;
}
}
} /**
* 对get请求处理未post请求
*/
function post(url, params) {
var temp = document.createElement("form");
temp.action = url;
temp.method = "post";
temp.style.display = "none";
for (var x in params) {
var opt = document.createElement("textarea");
opt.name = x;
opt.value = params[x];
temp.appendChild(opt);
}
document.body.appendChild(temp);
temp.submit();
return temp;
} //获取单选按钮值(包括单选和判断)
function getSingleAnswer(id) {
var params = document.getElementsByName("singleAnswer" + id);
var position;
var endPos = 4;
id = id + 60 ;
var oldMes ;
if(id >= 10){
endPos = 4;
}
for ( var i = 0; i < params.length; i++) {
value = params.item(i).getAttribute("value");
mes = id + ":"+ value + ";"
if(singleStr.indexOf(id + ":") < 0 && params.item(i).checked){
singleStr += mes;
return ;
}else if(singleStr.indexOf(id + ":") >= 0 && params.item(i).checked){
position = singleStr.indexOf(id);
oldMes = singleStr.substring(position, position + endPos + 1);
singleStr = singleStr.replace(oldMes, mes);
return ;
}
}
}
//获取复选框值,多选题
function getMultiAnswer(id) {
var box = document.getElementsByName("question.userAnswers"+id);
for ( var i = 0; i < box.length; i++) {
value = box.item(i).getAttribute("value");
mes = id + ":"+ value + ";" ;
if(answStr.indexOf(mes) < 0 && box.item(i).checked){
answStr += mes;
return ;
}else if(answStr.indexOf(mes) >= 0 && !box.item(i).checked){
answStr = answStr.replace(mes, "");
return ;
}
}
//return answStr;
} function userAnswers(id,type){
//alert("type:"+type);
if(type == 1){
getMultiAnswer(id);
}else{
getSingleAnswer(id);
}
} //整个界面提交
function examFinish(){
var answer = answStr + singleStr;
$("#fromBut").attr("action","examAction!examFinish.action?answer="+ answer);
$("#fromBut").submit();
} </script>
</head> <body >
<div id="overDiv" style="display:none;">
<div class="header">
<h1><img src="styles/images/da.png" height="60px" width="60px" text-align="bottom"> 考试结束</h1>
<p>
<time><%= new java.text.SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss E").format(new Date()) %></time>
</p>
</div>
<div class="section">
<p class="larger">
<img src="styles/images/ok.png" width="40" height="40"/>  
[<span class="red1"><s:property value="#session.user.name"/></span>] 您好,您的考试次数已经够了!
</p>
<p class="aligncenter">
您已考过[ <span class="red1"><s:property value="#session.user.num"/></span> ] 次, 您可以
<a href="index.jsp" class="ala">回首页</a>
</p>
</div> </div>
<div id="examDiv"> <div class="section" id="ee">
<div id="exam">
<input type="hidden" name="questionType" id="queType" value="<s:property value="question.type"/>">
<form action="" method="post" id = "fromBut">
<s:iterator value="questions" status="status" var="list">
<s:if test="#list.value[0].type == 2">
二、判断题(每题1分)<br/>
</s:if>
<s:elseif test="#list.value[0].type == 1">
一、多选题(每题1分)<br/>
</s:elseif>
<s:iterator value="#list.value" status="st">
<div class="biaot">
<s:property value="id"/>、
<s:property value="title"/><br/>
</div>
<s:if test="type == 2">
<input type="radio" name="singleAnswer${id }" value="0" onclick="userAnswers(${id},${type })" id="userAnswers${id + 60 }" />对
<input type="radio" name="singleAnswer${id }" value="1" onclick="userAnswers(${id},${type })" id="userAnswers${id + 60 }" />错
<br/>
</s:if>
<div class="daan">
<s:elseif test="type == 1">
<s:iterator value="options" id="option" status="status">
<input type="checkbox" name="question.userAnswers${id}" value="<s:property value="#status.index"/>" onclick="userAnswers(${id},${type })" id="userAnswers${id }">
<s:if test="#status.index == 0">A、</s:if>
<s:if test="#status.index == 1">B、</s:if>
<s:if test="#status.index == 2">C、</s:if>
<s:if test="#status.index == 3">D、</s:if>
<s:if test="#status.index == 4">E、</s:if>
<s:if test="#status.index == 5">F、</s:if>
<s:property value="#option"/>
</input>
<br>
</s:iterator>
</s:elseif>
</div>
</s:iterator>
<br/>
</s:iterator> </form> </div>
</div>
</div>
<div class="footer">
<%@include file="/foot.jsp" %>
</div>
</body>
</html>

  

<input type="radio" >与<input type="checkbox">值得获取的更多相关文章

  1. 定制 input[type="radio"] 和 input[type="checkbox"] 样式

    表单中,经常会使用到单选按钮和复选框,但是,input[type="radio"] 和 input[type="checkbox"] 的默认样式在不同的浏览器或 ...

  2. 修改 input[type="radio"] 和 input[type="checkbox"] 的默认样式

    表单中,经常会使用到单选按钮和复选框,但是,input[type="radio"] 和 input[type="checkbox"] 的默认样式在不同的浏览器或 ...

  3. 关于jq操作table下多个type=radio的input的选中

    假如有2个table: <table id="table1" border="0"> <tr> <td><input ...

  4. 点击DIV触发其他元素的点击事件(案例:点击type="radio" 的input 标签外层DIV,触发内部单选点击选中事件)

    方法一: 直接用找到对应dom元素调用.click()方法 $('.user_content').click(function(){ $(this).children()[0].click(); // ...

  5. 纯css兼容个浏览器input[type='radio']不能自定义样式

    各个浏览器对于表单input[type='radio'].input[type='checkbox']的样式总是各有差异   //html <div class="remember-a ...

  6. css 能改变input type radio和checkbox 圆圈或方框的大小

    把input隐藏,外面套label,再里面加个span,样式写在span上,让label覆盖在span上面,js去改active的class <label for="remember& ...

  7. input(type="checkbox"|type="radio")+jquery使用

    1.用.is(":checked")判断input是否为选中状态 例: var value=$(this).is(":checked"); localStora ...

  8. 自定义input[type="radio"]的样式

    对于表单,input[type="radio"] 的样式总是不那么友好,在不同的浏览器中表现不一. 为了最大程度的显示出它们的差别,并且为了好看,首先定义了一些样式: <fo ...

  9. 自定义input[type="radio"]的样式(支持普通浏览器,IE8以上)

    对于表单,input[type="radio"] 的样式总是不那么友好,在不同的浏览器中表现不一. 对单选按钮自定义样式,我们以前一直用的脚本来实现,不过现在可以使用新的伪类 :c ...

随机推荐

  1. Python 学习之urllib模块---用于发送网络请求,获取数据(4)

    承接将查询城市编码的结果保存到文件中,以字典的形式保存,目的是为了在查询某个城市的天气的时候,能够通过输入的城市名称,找到对应的城市编码.所以此结果字典的数据结构,就是city={城市名称:城市编码} ...

  2. OS概论2

    实时系统 实时即表示及时,实时计算可以定义为这样一类计算:系统的正确性,不仅由计算的逻辑结果来确定,而且还取决于产生结果的时间.事实上,实时系统最主要的特征,是将时间作为关键参数,它必须对所接收到的某 ...

  3. 用Eclipse 开发Dynamic Web Project应用程序 【转】

    简介:本文仅简单介绍基于Eclipse开发Dynamic Web Project应用下的JSP,Servlet及TOMCAT数据源的配置和开发. 软件环境: Eclipse Java EE IDE f ...

  4. ∑–△型模数转换器(ADC)简介

    ∑–△型模数转换器(ADC) 1.概述 近年来,随着超大规模集成电路制造水平的提高,Σ-Δ型模数转换器正以其分辨率高.线性度好.成本低等特点得到越来越广泛的应用.Σ-Δ型模数转换器方案早在20世纪60 ...

  5. 二分法查找(Binary Search)

    --摘要:二分法的介绍已经很多了,但并不直观,因此此文诞生,希望批评指正. 二分查找是在有序数组中查找一个元素的算法,通过比较目标元素与数组中间元素来查找,如果目标值是中间元素则将返回中间元素位置. ...

  6. 《无懈可击的Web设计》_灵活的文字

    常见的方法 body{ font-size:12px; } 使用像素单位的优点: 不管使用哪种浏览器或者设备来查看,文字看起来都大小一致. 为什么这么做不是无懈可击的? 以像素为单位设定文字大小之后, ...

  7. Eclipse下设置github开发环境

    1.按照github上的指南配置(http://help.github.com/win-set-up-git/)基础的git环境. 2.在github上创建一个Repository. 3.在Eclip ...

  8. VC提交网页表单(一共八篇)

    VC提交网页表单-自动评论留言(1)http://blog.csdn.net/wangningyu/article/details/4526357VC提交网页表单-自动评论留言(2)http://bl ...

  9. 周鸿祎——不要抱着打工心态去工作,而是把工作当创业(附读书笔记) good

    360周鸿祎反而最为开明,他说“不要抱着打工心态去工作,而是把工作当创业”,就像是,鼓励你拿着公司的工资,锻炼自己的能力,为自己以后创业积累资源和人脉(读书笔记:真是天底下最好的机会,天底下没有比工作 ...

  10. Excel数据链接取消

    Excel数据链接取消 2013-9-14 学校里弄来学生的成绩单,想去掉原来高一的学号,但是一删除,后面的成绩数据就一同消失,如以下两图对比所示. 删除第一列前 删除第一列后 此问题不知道怎么描述, ...