高校云平台——学生在线抽取试题及提交试卷

  参加高校云平台项目有一段时间了,我主要负责学生端,我觉得学生端一大难点就在于抽取试题和提交试卷。

  因为我们的试题都是动数据库都出来的,而每个试题下的选项是由单选框实现的,根据单选框的属性我们需要实现的是,单个试题下的四个单选框name必须相同,而试题与试题之间的单选框name必须不同,为的是实现每道题下都能且只能选择一个选项。

  而我们为了实现起来方便并不是为每道试题下都通过代码添加四个选项,而是写好四个选项之后通过foreach遍历每一道试题,为每道试题添加选项。难就难在这里,如果通过遍历,每道题之间相同选项的所有属性值都是相同的。这样说可能有些不好理解,举个例子吧,现在有A、B、C、D,HTML代码如下:

  

<span style="font-family:KaiTi_GB2312;font-size:18px;">                        <label ><input  value="1" name="XX" type="radio">A</label>

                        <label><input  value="2" name="XX" type="radio" >B</label>

                        <label><input  value="3" name="XX" type="radio">C</label>

                        <label><input value="4" name="XX" type="radio">D</label></span>

  通过遍历实现之后每道题下确实可以有A、B、C、D这四个选项,但是它们的name都是“XX”,这就会导致系统默认给所有的单选按钮组成一个组,整个页面只允许一个单选按钮处于选中状态。每个学生选来选去最后只选中一道题的一个选项,这是多么可怕的事情。因此我们需要让每道下的四个选项name相同,同时任意两道题之间的选项name不可以相同。

  根据以上信息我们要做的就是把每道题下单选框的name属性跟本题关联起来,这样的话即使是遍历只要题目不同,各题之间单选框的name属性就会不同,但是为了取到每道试题下被选中选项的值,还需要给每道题下的所有选项赋一个统一的id。我们都知道id属性是唯一标识的,因此不可能为每个选项都赋一个id并且令其相同。这里我就通过添加一个隐藏控件来统一题目和选项的id以方便后面提交,代码如下:

  

<span style="font-family:KaiTi_GB2312;font-size:18px;"> @foreach (EvaluationCheck a in ViewData["StudentAssess"] as List<EvaluationCheck>)
        {
            <ul class="score">

                <li>
                    @a.ID <label>@a.CheckContent </label><br />
                    <span id="span"+"@a.ID">

                        <label ><input  value="1" name="@a.ID" type="radio">A</label>

                        <label><input  value="2" name="@a.ID" type="radio" >B</label>

                        <label><input  value="3" name="@a.ID" type="radio">C</label>

                        <label><input value="4" name="@a.ID" type="radio">D</label>
                     </span>
               </li>
               </ul>
            List<EvaluationCheck> mylist=new List<EvaluationCheck>();//实例化考核项数据契约,得到考核项的数目
            mylist = ViewData["StudentAssess"] as List<EvaluationCheck>;
            <input value="@mylist.Count" id="max" type="hidden" /> //设置一个隐藏控件,统一每项考核项目以及其下选项的id
        }
         </span>

  这样既可以通过一个统一的id取到每道试题下选中答案的值,又可以实现每道试题下都能且只能选中一个答案,接下来就是通过ajax技术提交数据了:

  

<span style="font-family:KaiTi_GB2312;font-size:18px;"><script type="text/javascript" >

    function getScore() {
        var url = "/EvaluationStudentAssess/CheckScore/";

        var values= new Array();
        var max = document.getElementById("max").value;//通过隐藏控件的id取每项选中按钮的值
        for (var i = 1; i <= max; i++)//外层循环(考核项目数)
        {
            var radio = document.getElementsByName(i);
            for (var j = 0; j <5; j++) {  //内层循环(选项数)
                if (radio[j].checked) {
                    values[i] = j + 1;
                    break;
                }
            }
       }
        url = url + "?values=" values;

        $.ajax({
            url:url,
            type: 'POST',
            timeout: 100,

            Error: function () {
                alert(Error);
            },
            success: function (contents) {
                alert(contents);
            }
        });
    }
</script></span>

  基本上的实现就是这样的,界面暂时做的比较丑陋,就不展示给大家了。这些只是我的个人见解,当然期间也和同学交流过,总是觉得代码不够优化,哪位大神有其他比较好的思路欢迎沟通交流,有不足之处请大家批评指正。

时间: 2024-10-08 21:16:58

高校云平台——学生在线抽取试题及提交试卷的相关文章

ITOO高校云平台V3.1--项目总结(二)

自身责任要明确 心态要明确 布置任务要有反馈 总结      今天下午,举办了一场ITOO高校云平台3.1总结大会,针对3.1开发的过程中统计上来的问题进行讨论.      通过讨论统计上来的问题,映射到自身,看看自己还有那些问题没有发现,然后总结师哥,师姐或者同期的同志们给出的建议,进行改进. 自身责任要明确      作为一个负责任,首先要明确自己本身应该承担的责任,要明确那些事情是作为负责人应该做的事情,这一块暴露最多的就是开发过程中的接口问题,.NET的3.1只有七天的开发时间,本来是想

ITOO高校云平台V3.1--项目总结(一)

    高校云平台,可以说是我参加的的一个实战性的项目,刚开始接触,可以说是有点蒙,到真正的用到实践中去的时候才发现,之前学到的好多的知识,还只是依然处于学过的层次上,想要真正的运用到项目中去,还是欠缺的很多很多.     大概从去年的11月份开始参加的高校云平台的项目,从1.0开始,到现在的3.1,除了3.0由于软考的原因是后期才加进来的,整个开发过程,我都在.从开始的需求分析,原型设计,画类图,画时序图,技术选型(这一块当时应该是师哥师姐们确定的),设计数据库,还有后期的开发,测试.整个过程

论高校云平台的进阶之路

近日于浙江大学举办的"2017年高等教育信息化创新论坛"上,云计算当仁不让地成为了主角. 随着云计算技术走向成熟,有越来越多的高校把业务逐步迁移入云.可以说,上云已经成为现今教育行业的普遍选择. 华南理工大学信息化办公室主任陆以勤在会上表示,利用云技术把全校的IT资源统一起来后,云数据中心可以化身为学校内部的公共云平台,面向全校范围提供服务. 品高云教育行业经理王鹿苑亦赞同这一观点."高校的数据中心通常包括各种不同类型的资源和设备,不同的虚拟化软件.在上云之前,这些服务器.存

北辰区“教育云平台”启动 学生教师在线交流

课上学习的内容直接发送到网络上,老师讲课的讲义细节全部保留,方便复习.10日,北辰区教育云平台正式启用,同时区教育信息化中心投入使用.目前,基于云平台部署的应用已经启动.未来,北辰区将充分利用这一平台进一步向职业教育.社区教育和终身教育网络学习平台拓展. "北辰区地处城乡接合地段,中小学间的硬件水平差距很大."北辰区教育信息化中心主任蔡强表示,教育走向现代化是趋势,云技术平台的应用可以提升课堂教学的效率,同时让学生们有一种轻松.愉快的学习状态.到2012年,北辰区已经实现区内60所中小

软件工程-基于教育云平台的高校学生能力评估方法的研究与实现

问题描述 基于教育云平台的高校学生能力评估方法的研究与实现 评估方法需要使用CMMI--CMMI的基本知识掌握了一些-但是毫无头绪-望各位大神求助 解决方案 http://www.zhihu.com/question/37980592

互联在线云平台助力连锁企业微营销“连锁”起来

中介交易 SEO诊断 淘宝客 云主机 技术大厅 近年来移动互联网的快速崛起,让微营销成为时代主流.特别是刚刚过去的2013年,有太多成功的例子在证明着微营销的优势. 从2012年末<泰囧>到2013年初<小时代>的社会化营销,从可口可乐个性瓶到<疯狂猜图>.<百度魔图>和<魔漫相机>的分享,从南航微信的服务到<爸爸去哪儿>的口碑,无疑不是在想用户和企业展示着微营销的实力. 但例外的是连锁企业中,微营销的效果却并不理想,大部分连锁企业的

【CSDN在线培训Q/A】如何利用云平台构建容错的APP

8月13日,亚马逊AWS中国云解决方案架构师王毅在主题为"如何利用云平台构建容错的APP"的在线培训中,为我们讲述了如何在系统架构的时候充分利用云平台的各种特点,从而了解如何在AWS这样的云平台进行架构设计的技巧及相关资讯. 为了帮助大家更好的复习本次培训的相关内容,了解如何在AWS这样的云平台进行架构设计的技巧及相关资讯.CSDN整理了本次培训最后的QA,如下: Q1. 请问在分区机制中,如果应用请求距离A区在物理上距离最近.响应时间上也最快,在负载不重的情况下,那Elastic L

盛大在线强化“云平台” 陈天桥的开放新模式

作为盛大集团的基础,盛大在线过去虽然一直担负所有业务的用户资源运营,但相对沉默,眼下它开始活跃起来.因为,互动娱乐大鳄盛大集团正试图开辟新疆土,先锋正是盛大在线(SDO). 上周,盛大在线效仿亚马逊推出了"云计算"平台.前日接受<第一财经日报>采访时,公司联席CEO Touc Luong表示,盛大在线正建立垂直搜索引擎体系,将加强用户数据的挖掘.分析,以推进广告业务. 这不是孤立的动作,而是盛大集团商业模式变动的棋子,陈天桥虽不喜欢马化腾,但他也在走向开放. SDO变身 搭

陈天桥开放新模式:盛大在线强化“云平台”

作为盛大集团的基础,盛大在线过去虽然一直担负所有业务的用户资源运营,但相对沉默,眼下它开始活跃起来.因为,互动娱乐大鳄盛大集团正试图开辟新疆土,先锋正是盛大在线(SDO). 上周,盛大在线效仿亚马逊推出了"云计算"平台.前日接受采访时,公司联席CEO Touc Luong表示,盛大在线正建立垂直搜索引擎体系,将加强用户数据的挖掘.分析,以推进广告业务. 这不是孤立的动作,而是盛大集团商业模式变动的棋子,陈天桥虽不喜欢马化腾,但他也在走向开放. SDO变身 搭建"公有云&quo