<input type="radio" >与<input type="checkbox">值得获取
<%@ 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">值得获取的更多相关文章
- 定制 input[type="radio"] 和 input[type="checkbox"] 样式
表单中,经常会使用到单选按钮和复选框,但是,input[type="radio"] 和 input[type="checkbox"] 的默认样式在不同的浏览器或 ...
- 修改 input[type="radio"] 和 input[type="checkbox"] 的默认样式
表单中,经常会使用到单选按钮和复选框,但是,input[type="radio"] 和 input[type="checkbox"] 的默认样式在不同的浏览器或 ...
- 关于jq操作table下多个type=radio的input的选中
假如有2个table: <table id="table1" border="0"> <tr> <td><input ...
- 点击DIV触发其他元素的点击事件(案例:点击type="radio" 的input 标签外层DIV,触发内部单选点击选中事件)
方法一: 直接用找到对应dom元素调用.click()方法 $('.user_content').click(function(){ $(this).children()[0].click(); // ...
- 纯css兼容个浏览器input[type='radio']不能自定义样式
各个浏览器对于表单input[type='radio'].input[type='checkbox']的样式总是各有差异 //html <div class="remember-a ...
- css 能改变input type radio和checkbox 圆圈或方框的大小
把input隐藏,外面套label,再里面加个span,样式写在span上,让label覆盖在span上面,js去改active的class <label for="remember& ...
- input(type="checkbox"|type="radio")+jquery使用
1.用.is(":checked")判断input是否为选中状态 例: var value=$(this).is(":checked"); localStora ...
- 自定义input[type="radio"]的样式
对于表单,input[type="radio"] 的样式总是不那么友好,在不同的浏览器中表现不一. 为了最大程度的显示出它们的差别,并且为了好看,首先定义了一些样式: <fo ...
- 自定义input[type="radio"]的样式(支持普通浏览器,IE8以上)
对于表单,input[type="radio"] 的样式总是不那么友好,在不同的浏览器中表现不一. 对单选按钮自定义样式,我们以前一直用的脚本来实现,不过现在可以使用新的伪类 :c ...
随机推荐
- [記錄用]python py2app 檔案批次重新命名
demo.py 主要作用為 將同目錄下 *.mp4 檔案批次重新命名 例如: aaa001.mp4 ---重新命名為--> 001.mp4 aaa002.mp4 ---重新命名為--> 0 ...
- windows server 2008 R2 忘记administrator密码
第一步: 插入安装光盘,重光驱启动系统,在选择“安装语言”的地方,按shift+F10 在弹出的CMD窗口中,输入以下地址: x:\>c: c:\>cd windows\system32 ...
- ASP.NET注意事项
1.服务器上bin目录下面的dll备份的时候,第一个点号之前的名字不能是一样的,否则会报错. 2.
- 介绍.NET Core
在connect (),我们宣布.NET 核心将能完全释放,作为开放源码软件.我也答应在.NET 核心跟更多的细节.在这篇文章,我将提供.NET 核心,我们如何去释放它,它涉及到.NET 框架,如何和 ...
- qt5 基础知识
QWidget wQLineEdit edit; edit.show(); //如果没有这句,编辑框edit将会显示在父窗口的左上角edit.setParent(&w); //以w为父窗口并显 ...
- AndroidStudio Gradle版本不匹配问题
报错信息: p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica } Error:(1, 1) A problem occurr ...
- BZOJ 3707: 圈地 计算几何
Description 2维平面上有n个木桩,黄学长有一次圈地的机会并得到圈到的土地,为了体现他的高风亮节,他要使他圈到的土地面积尽量小.圈地需要圈一个至少3个点的多边形,多边形的顶点就是一个木桩,圈 ...
- Eclipse导入Android项目的正确方法
转自Eclipse导入Android项目的正确方法 看网上流传的Eclipse导入项目的方法都是在新建Android程序时使用"Create project form existing so ...
- python代码优化技巧
转自:http://www.douban.com/group/topic/31478102/ 这个资料库还有些不错的好文章: http://www.ibm.com/developerworks/cn/ ...
- web 文件上传 无刷新的方法 使用iframe
<html> <script type="text/javascript" src="admin/view/js/jquery.min.js" ...