做一个在线答题功能,如何把选择的题目号和单选按钮值传到另一个页面去与正确答案对比计算得分。。。。。在线等

Tempta 2015-10-08 08:11:06
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>e</title>
<script type="text/javascript">

window.onload=function(){ //当程序加载时候
var timer = null;
SetTime(); //调用SetTime开始计时

var exam_selt = document.getElementById("exam_selt");

}
function Onchage(){
if(exam_selt.value == "1"){
document.getElementById("1").style.display="block";
document.getElementById("2").style.display="none";
document.getElementById("timer").style.display="block";

ClearTime();



}else if(exam_selt.value == "2"){
document.getElementById("2").style.display="block";
document.getElementById("1").style.display="none";
document.getElementById("timer").style.display="block";
ClearTime();

}
else{
document.getElementById("timer").style.display="none";
document.getElementById("2").style.display="none";
document.getElementById("1").style.display="none";
}
}
</script>
</head>

<body>
<form action="defen.html" method="get" name="radio" id="form1">
科目选择:
<select name="kemu" id="exam_selt" onchange="Onchage()">
<option selected="selected" value="0">请选择</option>
<option value="1">心理健康</option>
<option value="2">毛浙东思想概论</option>
</select>
<div id="timer" style="color:red; border: 1px solid; width:600px; height:20px; display:none"></div>
<div id="1" style="border:1px solid; width:600px; height:450px; display:none" >

<table>
<tr><td colspan="4">一、单选题(10分,每小题4分,满分40分。)</td></tr>
<tr><td colspan="4"><label id="1st">1.人的生理和心理发展趋于成熟的关键时期是()。</label></td></tr>
<tr>
<td><input type="radio" name="1" id="1A" value="A" />A.初中时期</td>

<td><input type="radio" name="1" id="1B" value="B" />B.高中时期</td>

<td><input type="radio" name="1" id="1C" value="C" />C.大学时期</td>

<td><input type="radio" name="1" id="1D" value="D" />D.成年期</td>
</tr>
<tr><td colspan="4"><label id="2st">2.21世纪成为人才的首要条件是()。</label></td></tr>
<tr>
<td><input type="radio" name="2" id="2A" value="A" />A.身体健康</td>

<td><input type="radio" name="2" id="2B" value="B" />B.心理健康</td>

<td><input type="radio" name="2" id="2C" value="C" />C.社会适应良好</td>

<td><input type="radio" name="2" id="2D" value="D" />D.人际关系良好</td>
</tr>
<tr><td colspan="4" align="center"><input type="submit" value="提交试卷" /></td></tr>
</table>
</div>

<div id="2" style="border:1px solid; width:600px; height:450px; display:none">
<div id="" style="color:red; border: 1px solid;"></div>



</div>
</div>
</form>
<script type="text/javascript">
/* 倒计时 */
var maxtime = 30*60;
function CountDown(){
if(maxtime>=0){
minutes = Math.floor(maxtime/60);
seconds = Math.floor(maxtime%60);
msg = "距离结束还有"+minutes+"分"+seconds+"秒";
document.all["timer"].innerHTML=msg;

if(maxtime == 5*60)
alert('注意,还有5分钟!');
--maxtime;
}
else{
clearInterval(timer);
alert("时间到,结束!");
location.href="defen.html";
}
}

function SetTime(){
timer = setInterval("CountDown()",1000);
}
function ClearTime(){
maxtime = 30*60;
}

</script>
</body>
</html>
...全文
349 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
Tempta 2015-10-08
  • 打赏
  • 举报
回复
引用 2 楼 q81999008 的回复:
你这不是传值了吗。
在得分页面怎么把它们列出来呢
Tempta 2015-10-08
  • 打赏
  • 举报
回复
引用 4 楼 bbboy8205 的回复:
最好是json串 { 题号1: 值1, 题号2: 值2, ................ }
不会json 还没接触过
Tempta 2015-10-08
  • 打赏
  • 举报
回复
引用 1 楼 slwsss 的回复:
题号和值 按规则拼成字符串post过去
具体怎么写
风中的少年 2015-10-08
  • 打赏
  • 举报
回复
最好是json串 { 题号1: 值1, 题号2: 值2, ................ }
Tempta 2015-10-08
  • 打赏
  • 举报
回复
但是我不知道怎么在得分页把获取的值列出来
q81999008 2015-10-08
  • 打赏
  • 举报
回复

你这不是传值了吗。
slwsss 2015-10-08
  • 打赏
  • 举报
回复
题号和值 按规则拼成字符串post过去
Tempta 2015-10-08
  • 打赏
  • 举报
回复
引用 12 楼 q81999008 的回复:

function GetQueryString(name) {
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
    var r = window.location.search.substr(1).match(reg);
    if (r != null) return unescape(r[2]); return null;
    }
//这样调用:
 
alert(GetQueryString("参数名1"));
 
alert(GetQueryString("参数名2"));
 
alert(GetQueryString("参数名3"));


只用html和js处理,可以随便修改的
就是让我们做基础的,交作业的
q81999008 2015-10-08
  • 打赏
  • 举报
回复

function GetQueryString(name) {
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
    var r = window.location.search.substr(1).match(reg);
    if (r != null) return unescape(r[2]); return null;
    }
//这样调用:
 
alert(GetQueryString("参数名1"));
 
alert(GetQueryString("参数名2"));
 
alert(GetQueryString("参数名3"));


只用html和js处理,可以随便修改的
Tempta 2015-10-08
  • 打赏
  • 举报
回复
引用 9 楼 bbboy8205 的回复:
用ajax 提交你所选择的数据,再在后端处理是否正确。。。。。
不让我用后台和数据库啊,我打算用get来提交,把字符串切割获取答案存数组循环遍历出来。
Tempta 2015-10-08
  • 打赏
  • 举报
回复
引用 8 楼 q81999008 的回复:
[quote=引用 7 楼 qq_29618729 的回复:] [quote=引用 2 楼 q81999008 的回复:] 你这不是传值了吗。
在得分页面怎么把它们列出来呢[/quote] 你后台的是什么语言? php的话就是

$kemu=$_GET['kemu'];//可获取到'1'这个值
//第一题的答案:
$t_1=$_GET['1']; //可获取到'B'这个值
//第一题的答案:
$t_2=$_GET['2'];//可获取到'D'这个值
[/quote] 不让用后台 只用html和js来实现
风中的少年 2015-10-08
  • 打赏
  • 举报
回复


用ajax 提交你所选择的数据,再在后端处理是否正确。。。。。
q81999008 2015-10-08
  • 打赏
  • 举报
回复
引用 7 楼 qq_29618729 的回复:
[quote=引用 2 楼 q81999008 的回复:] 你这不是传值了吗。
在得分页面怎么把它们列出来呢[/quote] 你后台的是什么语言? php的话就是

$kemu=$_GET['kemu'];//可获取到'1'这个值
//第一题的答案:
$t_1=$_GET['1']; //可获取到'B'这个值
//第一题的答案:
$t_2=$_GET['2'];//可获取到'D'这个值

61,115

社区成员

发帖
与我相关
我的任务
社区描述
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
社区管理员
  • HTML(CSS)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧