固定内容的试卷我会,但是怎么弄才能自由设计?就是按照需求可以选择加一个选择题,加多选题,判断题等
3条回答 默认 最新
- CSDN专家-showbo 2021-12-17 13:36关注
其实模板都是一样的,单选,多选,判断(其实就是单选),根据类型问题类型生成radio(单选)还是checkbox(多选)就行了。
主要就是题型的设计和如何显示,然后前台根据后台生成的题目的type生成对应的内容就行了
简单示例如下<script> var questions = [ { type: 1,id:1, title: '单选问题1', answers: [{ id: '1', title: '单选问题1--选项1' }, { id: '2', title: '单选问题1--选项2' }, { id: '3', title: '单选问题1--选项3' }/*更多选项*/] }, { type: 2, id: 2, title: '多选问题1', answers: [{ id: '1', title: '多选问题1--选项1' }, { id: '2', title: '多选问题1--选项2' }, { id: '3', title: '多选问题1--选项3' }/*更多选项*/] }, { type: 3, id: 3, title: '判断题1' }, { type: 2, id: 4, title: '多选问题2', answers: [{ id: '1', title: '单选问题2--选项1' }, { id: '2', title: '单选问题2--选项2' }, { id: '3', title: '单选问题2--选项3' }/*更多选项*/] }, { type: 2, id: 5, title: '多选问题3', answers: [{ id: '1', title: '多选问题3--选项1' }, { id: '2', title: '多选问题3--选项2' }, { id: '3', title: '多选问题3--选项3' }/*更多选项*/] }, { type: 3, id: 6, title: '判断题2' }, ]; var s = questions.map(q => { let s = ''; switch (q.type) { case 1: s += `<li>${q.title}</li>`; s += '<ul>' s += q.answers.map(a => `<input type="radio" name="q${q.id}" value="${a.id}"/>${a.title}`).join('<br>') s += '</ul>' break; case 2: s += `<li>${q.title}</li>`; s += '<ul>' s += q.answers.map(a => `<input type="checkbox" name="q${q.id}" value="${a.id}"/>${a.title}`).join('<br>') s += '</ul>' break; case 3: s += `<li>${q.title}</li>`; s += '<ul>' s += `<input type="radio" name="q${q.id}" value="1"/>正确 <input type="radio" name="q${q.id}" value="0"/>错误` s += '</ul>' break; } return s; }).join('<br>'); document.write(s); </script>
有帮助或启发麻烦点下【采纳该答案】,谢谢~~有其他问题可以继续交流~
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
- ¥15 正弦信号发生器串并联电路电阻无法保持同步怎么办
- ¥15 划分vlan后,链路不通了?
- ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据
- ¥15 Vue3 大型图片数据拖动排序
- ¥15 Centos / PETGEM
- ¥15 划分vlan后不通了
- ¥20 用雷电模拟器安装百达屋apk一直闪退
- ¥15 算能科技20240506咨询(拒绝大模型回答)
- ¥15 自适应 AR 模型 参数估计Matlab程序