新需求:选项随机

新需求:题目的选项随机,题目的选项数不确定。

之前的试卷题目(多选,单选)的选项没有进行随机,现在需要随机排列。

exam题目,option为选项
<c:forEach item="${exams}" var="exam">
    ${exam}
    <c:forEach item="${exam.options}" var="option">
        ${option}
    </c:forEach>
</c:forEach>

这个怎么做才好呢?

阅读 2.9k
4 个回答
<%
for (Object exam:exams) {
    out.print(exam);
    Collections.shuffle(exam.options);
    for (Object option:exam.options) {
        out.print(option);
    }
}
%>

使用Collections.shuffle(exam.options)打乱列表顺序,像上面一样写小脚本,或者增加自定义标签或者增加el function这都是没问题。

在服务端随机好了之后再传到前端View,可以不停地取4以内随机数,如果用过就重取,分别变成新的ABCD选项。

在后端事先处理好数据,在丢到前端。

后端实现好后 给前端

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题