我正在尝试从 Google 表格构建我的第一个 Google 表单,但我遇到了一些问题。我想做的是添加选择到MultipleChoiceItem,但是动态,因为我事先无法知道选择的数量。
我已经尝试过这段代码并且有效:
//This Works
var preguntaQuienEres = form.addMultipleChoiceItem();
preguntaQuienEres.setTitle('¿Quién eres?').isRequired();
preguntaQuienEres.setChoices([
preguntaQuienEres.createChoice(nombresAlumnos[0], form.getItemById(saltosDeSeccion[0]).asPageBreakItem()),
preguntaQuienEres.createChoice(nombresAlumnos[1], form.getItemById(saltosDeSeccion[0]).asPageBreakItem()),
])
但是,如果我尝试添加单个选项,它只会删除所有内容并设置最后一个选择。
//This doesn't work
preguntaQuienEres.setChoices([
preguntaQuienEres.createChoice(nombresAlumnos[0], form.getItemById(saltosDeSeccion[0]).asPageBreakItem()),
])
preguntaQuienEres.setChoices([
preguntaQuienEres.createChoice(nombresAlumnos[1], form.getItemById(saltosDeSeccion[0]).asPageBreakItem()),
])
这是有道理的,但我无法控制它。 所以,看起来我必须建立一个选择列表,然后 setChoices(list),但它不起作用。我已经通过论坛中的示例尝试了很多方法,但仍然不起作用。 我最后的方法是这样的: nombresAlumnos:包含学生姓名。 saltosDeSeccion:具有 PageBreaks 的 ID。
var preguntaQuienEres = form.addMultipleChoiceItem();
preguntaQuienEres.setTitle('¿Quién eres?').isRequired();
var choices = [];
for (var i = 0; i < nombresAlumnos.length; i++) {
choices.push(preguntaQuienEres.createChoice(nombresAlumnos[i], form.getItemById(saltosDeSeccion[i]).asPageBreakItem()));
}
preguntaQuienEres.setChoiceValues(choices);
例如,我已经尝试过这个post,但我在文档中找不到 asMultipleChoiceItem 了。 我不懂这个。
提前非常感谢您的帮助。
我找到了解决方案。
preguntaQuienEres.setChoice(选择);
而不是
preguntaQuienEres.setChoiceValues(选择);