html静态网页:自动出题评分系统

简介: html静态网页:自动出题评分系统

效果:

1.png学习交流群:970353786非常勿扰

源码:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title></title>
        <style type="text/css">
            *{
                padding: 0;
                margin: 0;
            }
            #app{
                width: 800px;
                height: 600px;
                border: 4px solid green;
                margin: 0 auto;
            }
            #titleBox{
                width: 100%;
                height: 80px;
                /* border: 4px solid green;
                margin: -4px; */
                border-bottom: 4px solid green;
            }
            #questionsBox{
                width: 100%;
                height: 440px;
                border-bottom: 4px solid green;
            }
            #submitBox{
                width: 100%;
                height: 72px;
                line-height: 72px;
                text-align: center;
            }
            #titleBox div{
                float: left;
            }
            #titleBox .div1,#titleBox .div3{
                width: 150px;
                height: 80px;
                line-height: 80px;
                /* background-color: aqua; */
                text-align: center;
                font-size: 30px;
            }
            #titleBox .div1{
                color: green;
                cursor: pointer;
            }
            #titleBox .div3{
                color: red;
                font-size:25px ;
                display: none;
            }
            #titleBox .div2{
                width: 500px;
                height: 80px;
                text-align: center;
            }
            #submitBox button{
                width: 95%;
                height: 40px;
                background-color: #008000;
                font-size: 28px;
                border: none;
                border-radius: 28px;
            }
            #questionsBox ul{
                list-style: none;
            }
            #questionsBox ul li{
                float: left;
                width: 180px;
                font-size: 25px;
                text-align: right;
                margin-top: 40px;
            }
            #questionsBox ul li input{
                width: 60px;
                font-size: 25px;
            }
        </style>
  </head>
  <body>
        <div id="app">
            <div id="titleBox">
                <div class="div1">重新出题</div>
                <div class="div2">
                    <h1>自动出题和评分系统</h1>
                    <h3>(小学生100以内加减法运算)</h3>
                </div>
                <div class="div3">得分:XXX分</div>
            </div>
            <div id="questionsBox">
                <ul>
                    <!-- <li>99-77=<input type="text"></li>
                    <li>1-1=<input type="text"></li>
                    <li>99-77=<input type="text"></li>
                    <li>99-77=<input type="text"></li>
                    <li>2-1=<input type="text"></li>
                    <li>99-77=<input type="text"></li> -->
                </ul>
            </div>
            <div id="submitBox">
                <button>提交</button>
            </div>
        </div>
  </body>
    <script type="text/javascript">
        getQuestions();
        function getQuestions(){
            var ul = document.querySelector("#questionsBox ul");
            for (var i = 1; i <=20; i++) {
                var op = parseInt(Math.random()*2)?"+":"-";
                do{
                    var a = parseInt(Math.random()*100);
                    var b = parseInt(Math.random()*100);
                    if(op == "-"){
                        if (a >= b) {
                            break;
                        } 
                    }
                    if(op == "+"){
                        if (a + b <= 100) {
                            break;
                        } 
                    }
                }while(1);
                var li = '<li>' + a + op + b + '=<input type="text"></li>';
                ul.innerHTML += li;
            }
        }
        //重新出题
        document.querySelector("#titleBox .div1").onclick = function(){
            window.location.reload();//刷新
        }
        //提交,判断得分
        document.querySelector("#submitBox button").onclick = function(){
            document.querySelector("#titleBox .div3").style.display = "block"
            var score = 0;
            //..........计算得分,实现评分功能,补充代码  score += 5
            document.querySelector("#titleBox .div3").innerText = "得分:"+ score +"分"
        }
    </script>
</html>

调了下,这个更全:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title></title>
        <style type="text/css">
            *{
                padding: 0;
                margin: 0;
            }
            #app{
                width: 800px;
                height: 600px;
                border: 4px solid green;
                margin: 0 auto;
            }
            #titleBox{
                width: 100%;
                height: 80px;
                /* border: 4px solid green;
                margin: -4px; */
                border-bottom: 4px solid green;
            }
            #questionsBox{
                width: 100%;
                height: 440px;
                border-bottom: 4px solid green;
            }
            #submitBox{
                width: 100%;
                height: 72px;
                line-height: 72px;
                text-align: center;
            }
            #titleBox div{
                float: left;
            }
            #titleBox .div1,#titleBox .div3{
                width: 150px;
                height: 80px;
                line-height: 80px;
                /* background-color: aqua; */
                text-align: center;
                font-size: 30px;
            }
            #titleBox .div1{
                color: green;
                cursor: pointer;
            }
            #titleBox .div3{
                color: red;
                font-size:25px ;
                display: none;
            }
            #titleBox .div2{
                width: 500px;
                height: 80px;
                text-align: center;
            }
            #submitBox button{
                width: 95%;
                height: 40px;
                background-color: #008000;
                font-size: 28px;
                border: none;
                border-radius: 28px;
            }
            #questionsBox ul{
                list-style: none;
            }
            #questionsBox ul li{
                float: left;
                width: 180px;
                font-size: 25px;
                text-align: right;
                margin-top: 40px;
            }
            #questionsBox ul li input{
                width: 60px;
                font-size: 25px;
            }
        </style>
  </head>
  <body>
        <div id="app">
            <div id="titleBox">
                <div class="div1">重新出题</div>
                <div class="div2">
                    <h1>自动出题和评分系统</h1>
                    <h3>(小学生100以内加减法运算)</h3>
                </div>
                <div class="div3">得分:XXX分</div>
            </div>
            <div id="questionsBox">
                <ul>
                    <!-- <li>99-77=<input type="text"></li>
                    <li>1-1=<input type="text"></li>
                    <li>99-77=<input type="text"></li>
                    <li>99-77=<input type="text"></li>
                    <li>2-1=<input type="text"></li>
                    <li>99-77=<input type="text"></li> -->
                </ul>
            </div>
            <div id="submitBox">
                <button>提交</button>
            </div>
        </div>
  </body>
    <script type="text/javascript">
        getQuestions();
        function getQuestions(){
            var ul = document.querySelector("#questionsBox ul");
            for (var i = 1; i <=20; i++) {
                var op = parseInt(Math.random()*2)?"+":"-";
                do{
                    var a = parseInt(Math.random()*100);
                    var b = parseInt(Math.random()*100);
                    if(op == "-"){
                        if (a >= b) {
                            break;
                        } 
                    }
                    if(op == "+"){
                        if (a + b <= 100) {
                            break;
                        } 
                    }
                }while(1);
                var li = '<li>' + a + op + b + '=<input type="text"></li>';
                ul.innerHTML += li;
            }
        }
        //重新出题
        document.querySelector("#titleBox .div1").onclick = function(){
            window.location.reload();//刷新
        }
        //提交,判断得分
        document.querySelector("#submitBox button").onclick = function(){
            document.querySelector("#titleBox .div3").style.display = "block"
            var score = 0;
            //获取所有li
            var liArr = document.querySelectorAll("#questionsBox ul li");
            console.log(liArr);
            //遍历所有li
            for (var i = 0; i < liArr.length; i++) {
                var li = liArr[i];
                //一、获取标准答案
                //获取li的内容字符串
                var str = li.innerText;
                console.log(str);
                //获取算术式,截取等号左边的式子
                var mathStr = str.substring(0,str.length-1);
                console.log(mathStr);
                //计算标准答案
                var answer = eval(mathStr);
                console.log(answer);
                // 二、获取学生答案
                //获取input框
                var input = li.getElementsByTagName("input")[0];
                console.log(input);
                //获取input框中输入的内容,得到学生答案
                var studentAnswer = input.value;//""
                console.log(studentAnswer);
                //三、判断对错,计算得分
                //先确定学生是否填了答案,如果填了答案
                if (studentAnswer != "") {
                    //再判断所填是否正确
                    if (answer == studentAnswer) {
                        score += 5;//答案正确,加分
                    }
                }
            }
            document.querySelector("#titleBox .div3").innerText = "得分:"+ score +"分"
        }
    </script>
</html>
相关文章
|
3月前
|
前端开发
仿新浪sina轻个人微博html静态网页模板
一款最新的仿新浪sina个人微博html静态网页模板(轻博客/轻微博/贴吧主页、qq社交空间主题),模板清新简洁、新颖,包含关注、粉丝、人气、个人资料、文章、视频等。
29 0
静态网页html+css的真ikun网站
静态网页html+css的真ikun网站
|
3月前
|
Java 项目管理 数据库
基于springboot电子招投标系统(分前后台管理springboot+mybatis+maven+html+css)
基于springboot电子招投标系统(分前后台管理springboot+mybatis+maven+html+css)
123 0
|
1月前
|
移动开发 API HTML5
HTML5响应式自动采集API壁纸系统源码自适应手机端
HTML5响应式自动采集API壁纸系统源码自适应手机端
41 11
HTML5响应式自动采集API壁纸系统源码自适应手机端
|
7月前
|
前端开发 编译器 Linux
JavaWeb第二章:HTML和CSS的知识制作静态网页
JavaWeb第二章:HTML和CSS的知识制作静态网页
67 0
|
3月前
|
Java 数据库连接 数据库
基于SpringBoot+maven+Mybatis+html慢性病报销系统(源码+数据库)
基于SpringBoot+maven+Mybatis+html慢性病报销系统(源码+数据库)
|
5月前
|
前端开发 JavaScript 数据安全/隐私保护
HTML&CSS实训(网页练题系统)
这是一个基于HTML和css的一些技术创建的一个简单网页实训练题系统本章用到的资源我已经打包上传到https://download.csdn.ne直接点击下载即可或者在评论留言,我看到后将会第一时间把资源私信给你解压压缩包后直接双击网页入口,打开方式 任意浏览器​​​​​​​ 用户密码验证...
26 0
|
6月前
|
数据采集 数据安全/隐私保护
采用SpringBoot+原生HTML+MySQL开发的电子病历系统源码
本套电子病历系统主要面向医疗机构医生、护士,提供对住院病人的电子病历书写、保存、修改、打印等功能。本系统基于云端SaaS服务方式,通过浏览器方式访问和使用系统功能,提供电子病历在线制作、管理和使用的一体化电子病历解决方案,为医疗机构的电子病历业务开展提供支撑。
|
7月前
|
数据采集 自然语言处理 Java
爬虫系统的核心:如何创建高质量的HTML文件?
在网页抓取或爬虫系统中,HTML文件的创建是一项重要的任务。HTML文件是网页的基础,包含了网页的所有内容和结构。在爬虫系统中,我们需要生成一个HTML文件,以便于保存和处理网页的内容。
|
Web App开发 移动开发 前端开发
HTML5 移动端页面适配 iOS 系统刘海屏
HTML5 移动端页面适配 iOS 系统刘海屏
1067 0
HTML5 移动端页面适配 iOS 系统刘海屏