JS制作简易的考试答题管理系统
答题卡系统: 网站运行效果
代码区域:
HTML 代码:
<style type="text/css">
body {
font-size: 30px;
background: beige;
font-family: "宋体";
} #container {
margin: 1px auto; /*调整边缘*/
} #box {
overflow: hidden; /*隐藏溢出;*/
} #box label {
margin-top: 5px; /*上边距*/
background: #cde6c7;
width: 80px;
display: inline-block; /*显示内连*/
text-align: right; /*排列文本*/
margin-left: 50px;
}
</style>
js 代码:
<script type="text/javascript">
window.onload = function() {
var row = ;//行
var col = ;//列
var mybody = document.getElementById('mybody');
if (col > ) {
//设置样式 宽度
mybody.style.width = document.body.scrollWidth + (col - ) * ;
} initOptions(row, col);
var btn = document.getElementById("F");
var btn2 = document.getElementById('d');
btn2.onclick = names;
btn.onclick = btnClick;
//创建一个rchoice
var cbxs = document.getElementsByName("rchoice");
for (var i = ; i < cbxs.length; i++) {
cbxs[i].style.cssText = "margin-left:20px;";
}
};
//调度方法 打印行和列
function btnClick() {
var a = document.getElementById("a");
var b = document.getElementById("b");
var hang = a.value;
var lie = b.value;
initOptions(hang, lie); };
//判断用户名是否存在
function names() {
var text = document.getElementById('c');
var name = text.value;
if (name != "") {
alert("OK");
} else {
alert('请填写用户名'); }
}
//动态加载答题区控件!
function initOptions(row, column) {
//创建一个box
var box = document.getElementById('box');
box.innerHTML = "";
//题目编号,从0开始
var count = ;//计算题目编号
var mytag; //CheckBox的Tag属性值
for (var i = ; i <= row; i++) {
count++;
var mydiv = document.createElement("div");
box.appendChild(mydiv);//获取子节点
mydiv.style.overflow = "auto";
for (var j = ; j <= column; j++) { //默认j的值为2
//创建一个label
var label = document.createElement('label');
//设置座位号
if (j == ) {
label.innerHTML = count + "题";
mytag = count; } else { //多列的情况下创建题目编号的方式
label.innerHTML = (count + row * (j - )) + "题";
mytag = count + row * (j - );
} var littlediv = document.createElement("div");
littlediv.style.float = "left";
mydiv.appendChild(littlediv);
littlediv.appendChild(label); //创建四个选项
//第一个checkbox DOM Checkbox 对象
var cb1 = document.createElement("input");
cb1.setAttribute("type", "checkbox");
cb1.setAttribute("value", "A:" + mytag);
cb1.setAttribute("name", "rchoice");
var cbtxt = document.createTextNode("A");
littlediv.appendChild(cb1);
littlediv.appendChild(cbtxt); //第二个checkbox DOM Checkbox 对象
var cb2 = document.createElement("input");
cb2.setAttribute("type", "checkbox");
cb2.setAttribute("value", "B:" + mytag);
cb2.setAttribute("name", "rchoice");
var cbtxt2 = document.createTextNode("B");
littlediv.appendChild(cb2);
littlediv.appendChild(cbtxt2); //第三个checkbox DOM Checkbox 对象
var cb3 = document.createElement("input");
cb3.setAttribute("type", "checkbox");
cb3.setAttribute("value", "C:" + mytag);
cb3.setAttribute("name", "rchoice");
var cbtxt3 = document.createTextNode("C");
littlediv.appendChild(cb3);
littlediv.appendChild(cbtxt3); //第四个checkbox DOM Checkbox 对象
var cb4 = document.createElement("input");
cb4.setAttribute("type", "checkbox");
cb4.setAttribute("value", "D:" + mytag);
cb4.setAttribute("name", "rchoice");
var cbtxt4 = document.createTextNode("D");
littlediv.appendChild(cb4);
littlediv.appendChild(cbtxt4);
var myline = document.createElement("br");
if (j == column) {
mydiv.appendChild(myline);
}
}
}
}
</script>
Body 里:
<body id="mybody">
<div class="mybody"></div>
<span class="o"> 行: <input id="a">列: <input id="b"> <button id="F">生成</button> 姓名: <input type="text" id="c"> <button id="d">提交</button> <br> <br> <div id="container">
<div id="box"></div>
</div>
</span>
</body>
JS制作简易的考试答题管理系统的更多相关文章
- JQuery制作简易的考试答题管理系统
网页效果: 代码部分: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> & ...
- 利用css+原生js制作简易钟表
利用css+原生js制作简单的钟表.效果如下所示 实现该效果,分三大块:html.javascript.css html部分html部分比较简单,定义一个clock的div,内部有原点.时分秒针.日期 ...
- 【带着canvas去流浪(13)】用Three.js制作简易的MARVEL片头动画(下)
目录 一. 模型的制作 1.1 生成字体模型 1.2 多表面贴图 二. 镜头及动画 三. 大作业总结 示例代码托管在:http://www.github.com/dashnowords/blogs 博 ...
- 用js制作简易计算器及猜随机数字游戏
<!doctype html><html><head> <meta charset="utf-8"> <title>JS ...
- 【带着canvas去流浪(12)】用Three.js制作简易的MARVEL片头动画(上)
目录 一. 大作业说明 二.基本思路 三.视频纹理表面修复--UV映射 3.1 问题描述 3.2 纹理贴图的基本原理-UV映射 3.3 关键示例代码 四.小结 示例代码托管在:http://www.g ...
- 使用node.js制作简易爬虫
最近看了些node.js方面的知识,就像拿它来做些什么.因为自己喜欢摄影,经常上蜂鸟网,所以寻思了一下,干脆做个简单的爬虫来扒论坛的帖子. 直接上代码吧. var sys = require(&quo ...
- 原生JS制作简易Tabs组件
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- commander.js 制作简易的 MINA CLI 脚手架
出发点并不是小程序本身,是想要做一个脚手架(command-line interface),看过 VUE / REACT 脚手架,觉得很厉害,但是并不太知道里面是怎么做成的,所以最近研究了研究,看能不 ...
- 用JS制作简易选项卡
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 30.0px Consolas; color: #2b7ec3 } p.p2 { margin: 0.0px ...
随机推荐
- win10 下的YOLOv3 训练 wider_face 数据集检测人脸
1.数据集下载 (1)wider_face 数据集网址为 http://shuoyang1213.me/WIDERFACE/index.html 下载以上几项文件(这里推荐 google Drive ...
- Redi缓存注意事项
缓存使用的场景 在一个高频访问的应用系统中,每次用户的请求需要去存储中获取数据,会对数据库造成很大的压力.容易导致数据库的奔溃.所以才会出现缓存来分担一部分的数据库的压力. 具体会产生数据库访问压力的 ...
- 系统学习 Java IO (五)----使用 SequenceInputStream 组合多个流
目录:系统学习 Java IO---- 目录,概览 SequenceInputStream 可以将两个或多个其他 InputStream 合并为一个. 首先,SequenceInputStream 将 ...
- linux配置多个tomcat
1.修改tomcat目录下面conf/server.xml,修改shutdown的port和http port 2.修改bin/catalina.sh 在最前面加上 export CATALINA_B ...
- Linux命令分类汇总(1~6)
Linux命令分类汇总 序号 命令 参数 英文释义 功能说明 (一)线上查询及帮助命令(2个) 1 man manual 查看命令帮助,命令的词典,还有info 2 help h 查看Linux内置命 ...
- 机器学习经典算法之Apriori
一. 搞懂关联规则中的几个概念 关联规则这个概念,最早是由 Agrawal 等人在 1993 年提出的.在 1994 年 Agrawal 等人又提出了基于关联规则的 Apriori 算法,至今 Apr ...
- 从0x00到0xFF的含义
对于二进制来说,8位二进制我们称之为一个字节,二进制的表达范围值是从0b00000000-0b11111111,而我们程序中用十六进制表示的时候就是从0x00到0xFF,这里教大家一个二进制转换十进制 ...
- 并发编程-concurrent指南-原子操作类-AtomicLong
可以用原子方式更新的 long 值.有关原子变量属性的描述,请参阅 java.util.concurrent.atomic 包规范.AtomicLong 可用在应用程序中(如以原子方式增加的序列号), ...
- HDU 4819:Mosaic(线段树套线段树)
http://acm.hdu.edu.cn/showproblem.php?pid=4819 题意:给出一个矩阵,然后q个询问,每个询问有a,b,c,代表(a,b)这个点上下左右c/2的矩形区域内的( ...
- 深入理解C#的装箱和拆箱
个人理解(本质): 封箱是把值类型转换为引用类型 拆箱是把引用类型转换为值类型 封箱是把值类型转换为System.Object类型,或者转换为由值类型实现的接口类型: 例如: struct Mystr ...