<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 ...
随机推荐
- MySQL数据库的热备份和冷备份
冷备份(off, 慢, 时间点上恢复)冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库.冷备份是将关键性文件拷贝到另外位置的一种说法.对于备份数据库信息而言,冷备份是最 ...
- IT从业人员必看的十几个论坛
IT方面的论坛太多了,有综合,有专业,有行业,在各个论坛里混了几年,体会颇深,以前是论坛哪里人多,往哪里去,新浪论坛,网易是经常去的,人多啊,好几十万,去了以后才发现没有意思,没有共同的语言,于是逛专 ...
- iOS分类中通过runtime添加动态属性
这个的话并不是说 可以 在程序运行的时候 来几个 未知的东西 就添加什么 1 2 3 4 5的属性.而是可以在系统原有类的基础上 给那个类 集合实际的工程来添加你方便实用的东西.比如 ...
- 解决android模拟器太大,小屏幕无法完全显示的问题
http://hi.baidu.com/conanx/blog/item/05479befd6534d03fdfa3cbb.html 安装上Android模拟器之后,开启一个Android 2.2的模 ...
- Servlet高级应用---Servlet与缓存
一]设置缓存文件的有效日期 重点方法: HttpServletRequest类: 1>String getRequest ...
- C语言面试题(嵌入式开发方向,附答案及点评)
整理自C语言面试题(嵌入式开发方向,附答案及点评) 预处理器(Preprocessor) 1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SEC ...
- perl 面向对象demo
Vsftp:/root/perl/17# cat Critter.pm package Critter; sub new { my $self = {}; my $invocant = shift; ...
- perl unload utf-8 oracle Wide character in print at unload_oracle.pl line 105.
#!/usr/bin/perl use DBI; use Encode; my $dbName = 'oadb'; my $dbUser = 'vxspace'; my $dbUserPass = ' ...
- TeeChart中Axis的CalcIncrement属性
private void Init() { tChart = new TChart(); panel1.Controls.Add(tChart); tChart.Aspect.View3D = fal ...
- 通过 WIN32 API 实现嵌入程序窗体
写了一个不使用 COM, 而是通过 WIN32 API 实现的示例, 它把写字板程序嵌在了自己的一个面板中. 这么做可能没有实际意义, 因为两个程序之前没有进行有价值的交互, 这里仅仅是为了演示这么做 ...