You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Google Forms测验脚本添加分节与正确答案跳转功能?

解决方案

核心思路

  • 单题单章节:循环为每道题创建独立SectionItem,将题目嵌入对应章节,同时用数组存储所有章节引用,用于后续导航配置。
  • 兼顾正确答案与导航:不依赖createChoice的重载参数,先创建基础选项,再通过setIsCorrect()和setNavigationItem()分别设置正确标记与跳转规则,实现两者共存。

修正后的完整代码

var mySheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var data = mySheet.getDataRange().getValues();
var numberOfQuestions = data.length;

// 创建表单并启用测验模式
var myForm = FormApp.create('Random Quiz').setIsQuiz(true);
myForm.setTitle('Random Quiz');

// 存储所有章节,用于导航引用
var sections = [];

for (var i = 0; i < numberOfQuestions; i++) {
    // 读取当前题目数据
    var questionText = data[i][0];
    var answers = data[i].slice(1, 5);
    var rightAnswerIndex = data[i][5] - 1; // 转换为0索引

    // 创建当前问题的章节
    var section = myForm.addSectionItem();
    section.setTitle(`问题 ${i + 1}`);
    sections.push(section);

    // 在章节中添加单选题
    var mcItem = myForm.addMultipleChoiceItem();
    mcItem.setTitle(questionText);
    mcItem.setPoints(1);

    // 构建选项,同时配置正确答案与导航
    var options = [];
    for (var j = 0; j < answers.length; j++) {
        var choice = mcItem.createChoice(answers[j]);
        
        // 设置是否为正确答案
        choice.setIsCorrect(j === rightAnswerIndex);

        // 设置导航规则:答对跳下一章节,答错留当前章节
        if (j === rightAnswerIndex) {
            // 最后一题答对直接跳转提交页
            choice.setNavigationItem(
                i === numberOfQuestions - 1 
                ? FormApp.NavigationType.SUBMIT 
                : sections[i + 1]
            );
        } else {
            // 答错跳转回当前章节,允许重新作答
            choice.setNavigationItem(sections[i]);
        }

        options.push(choice);
    }

    // 应用选项到单选题
    mcItem.setChoices(options);
}

关键细节说明

  • 章节引用管理:用sections数组保存所有章节对象,确保正确选项能精准定位到下一个章节。
  • 选项属性分离设置:通过Choice对象的两个独立方法,避开createChoice重载只能二选一的限制,同时实现正确答案标记与导航逻辑。
  • 边界处理:最后一题的正确答案直接跳转到提交页,避免无后续章节的错误。
  • 拼写修正:原代码中formulario、pregunta、opciones、righrAnswerIndex等拼写错误已统一修正。

内容的提问来源于stack exchange,提问作者Kaikus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 02:02:51