JavaScript——易班优课YOOC课群在线测试自动答题解决方案(七)随机答案

前文

JavaScript——易班优课YOOC课群在线测试自动答题解决方案(一)答案获取

Spring Boot——易班优课YOOC课群在线测试自动答题解决方案(二)答案储存

Spring Boot——易班优课YOOC课群在线测试自动答题解决方案(三)答案查询

JavaScript——易班优课YOOC课群在线测试自动答题解决方案(四)答案显示

JavaScript——易班优课YOOC课群在线测试自动答题解决方案(五)简单脚本

Spring Boot——易班优课YOOC课群在线测试自动答题解决方案(六)后端改造

问题分析

为了获取易班题库,势必需要大量的练习,而易班增加了不允许提交白卷的设置。

提交按钮事件

 submitAnswer()方法

如果直接使用  submitAnswer()方法,服务端的校验不能通过。

_AnswerData()方法和AnswerData 

 

题目事件监听 

答案保存 

大致流程:点击选项/或者填写内容 -> 触发事件监听 -> 保存答案到浏览器缓存和服务器 -> 提交试卷

解决方案

//获取问题信息
    var question=Array.from(document.getElementsByClassName('question-board'))
    question.forEach(q=>{console.log(q)
        let inputTag=q.getElementsByTagName('input')
        console.log(inputTag)
        if(inputTag.length>0){
            let Ele=inputTag[0]
            if(Ele.type==="radio"||Ele.type==="checkbox"){
                if(Ele.type==="radio"){
                    Ele.checked=true;
                }else if(Ele.type==="checkbox"){
                    Ele.checked=true;
                }
                //页面方法
                choiceAnswerData($(q))
            }else if(Ele.type==="text"){
                let Eles=Array.from(inputTag)
                Eles.forEach(e=>{
                    e.value="test"
                })
                //页面方法
                inputAnswerData($(q))
            }
        }
    })

参考文章

https://blog.csdn.net/jackliu16/article/details/79599173

https://www.w3school.com.cn/jquery/traversing_each.asp

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章