shencheng000000 2009-11-16 19:51
浏览 299
已采纳

JSP在线考试系统得到用户提交答案

前段时间用MVC做了个在线考试系统, 前台主要是用户登陆后选择科目参加考试,所有的题目都是从LIST里用标签动态遍历出来,都是单选框(单选题),每组题name一样,每个题有个唯一的正确答案,在用户交卷后如何得到用户提交的答案? 想了几个解决方案:

1、用ajax,对ajax研究不深,虽然是解决这个的最好办法,但是没去研究,有

2、一道题目一道题目提交,这样做是简单的,但是也是最繁琐的,因为每做一次提交一次,如果访问量大的话服务器负担会很大,而且也不敢保证用户的耐心,不支持用这个方法

3、用JAVAScript,分页提交,先把题目分页显示,比如数据库有200道题目,每页10道题目,这样在Script中array数组长度可以定义为10,每次点击单选框时通过name去得到相应的值

//定义全局arr
var arr = new Array("","","","","","","","","","");
function setkey1(name){
    arr[1] = name;
         count();
}
function setkey2(name){
    arr[2] = name;
         count();
}
function setkey3(name){
    arr[3] = name;
         count();
}
function setkey4(name){
    arr[4] = name;
         count();
}
function setkey5(name){
    arr[5] = name;
         count();
}
function setkey6(name){
    arr[6] = name;
         count();
}
function setkey7(name){
    arr[7] = name;
         count();
}
function setkey8(name){
    arr[8] = name;
         count();
}
function setkey8(name){
    arr[9] = name;
         count();
}

function setkey8(name){
    arr[10] = name;
         count();
}
//每一组单选框调用一个方法,将本身的value传进去赋给arr,调用count()方法拼接赋给box隐藏域
function count(){
    box.value =arr[0] +arr[1] +arr[2] +arr[3] +arr[4] +arr[5] +arr[6] +arr[7] +arr[8] +arr[9] +arr[10]; //box为一隐藏域
}




提交后在servlet中得到隐藏域的值即可。
提交后可由用户选择是否继续进行考试,不继续则计算总分,继续则显示下一页题目。

各位有更好的办法请多多指教!

 

  • 写回答

2条回答 默认 最新

  • weixin_42519095 2009-11-24 19:58
    关注

    你可以在加载单选按钮时,给每个按钮设置一个值(比如a、b、c、d,正确的值为其中一个),提交或得所值,通过遍历,获得其中一个name的值在与对应的name的正确值相比较

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮