Google Apps 脚本:检索网格项响应 Returns 未定义
Google Apps Script: Retrieving Grid Item Response Returns Undefined
无论我做什么,这 returns 都是 "Logger.log(medItemResponse);" 的未定义对象。
function updateMedicationNumbers() {
var lastFormResponse = getLastForm();
getMedItemResponse(lastFormResponse);
}
function getLastForm(){
var form = FormApp.getActiveForm();
var formResponseArray = form.getResponses();
var lastFormResponse = formResponseArray[formResponseArray.length-1];
Logger.log(lastFormResponse);
return lastFormResponse;
}
function getMedItemResponse(lastFormResponse){
var responseItems = lastFormResponse.getItemResponses();
Logger.log(responseItems);
for (var i = 0; i < responseItems.length; i++){
var responseItem = responseItems[i].getItem();
if(responseItem.getTitle() == "Individual Meds"){
var medItemResponse = responseItems[i].getResponse();
}
}
Logger.log(medItemResponse);
}
这是 .getResponse() 的文档;
获取受访者提交的答案。对于大多数类型的问题项,此 returns 一个字符串。对于 CheckboxItem 问题,此 returns 一个包含响应者选择的 String[] 数组。数组中字符串的顺序可能会有所不同。对于 GridItem 问题,此 returns 一个 String[] 数组,其中索引 n 处的答案对应于网格中第 n + 1 行的问题。如果受访者没有回答网格中的问题,则该答案将返回为“”。对于 CheckboxGridItem 问题,此 returns 一个 String[][] 数组,其中行索引 n 处的答案对应于复选框网格中第 n + 1 行的问题。如果受访者没有回答网格中的问题,则该答案将返回为“”。
Return
对象 — 问题项
答案的字符串或字符串[]或字符串[][]
我用另一种形式试过了,它似乎有效,但我不确定它是否适合你。
function getMedItemResponse(lastFormResponse){
var responseItems = lastFormResponse.getItemResponses();
Logger.log(responseItems);
for (var i = 0; i < responseItems.length; i++){
var responseItem = responseItems[i];
if(responseItem.getItem().getTitle() == "Individual Meds"){
var medItemResponse = responseItems[i].getResponse();
}
}
Logger.log(medItemResponse);
}
无论我做什么,这 returns 都是 "Logger.log(medItemResponse);" 的未定义对象。
function updateMedicationNumbers() {
var lastFormResponse = getLastForm();
getMedItemResponse(lastFormResponse);
}
function getLastForm(){
var form = FormApp.getActiveForm();
var formResponseArray = form.getResponses();
var lastFormResponse = formResponseArray[formResponseArray.length-1];
Logger.log(lastFormResponse);
return lastFormResponse;
}
function getMedItemResponse(lastFormResponse){
var responseItems = lastFormResponse.getItemResponses();
Logger.log(responseItems);
for (var i = 0; i < responseItems.length; i++){
var responseItem = responseItems[i].getItem();
if(responseItem.getTitle() == "Individual Meds"){
var medItemResponse = responseItems[i].getResponse();
}
}
Logger.log(medItemResponse);
}
这是 .getResponse() 的文档;
获取受访者提交的答案。对于大多数类型的问题项,此 returns 一个字符串。对于 CheckboxItem 问题,此 returns 一个包含响应者选择的 String[] 数组。数组中字符串的顺序可能会有所不同。对于 GridItem 问题,此 returns 一个 String[] 数组,其中索引 n 处的答案对应于网格中第 n + 1 行的问题。如果受访者没有回答网格中的问题,则该答案将返回为“”。对于 CheckboxGridItem 问题,此 returns 一个 String[][] 数组,其中行索引 n 处的答案对应于复选框网格中第 n + 1 行的问题。如果受访者没有回答网格中的问题,则该答案将返回为“”。
Return
对象 — 问题项
答案的字符串或字符串[]或字符串[][]我用另一种形式试过了,它似乎有效,但我不确定它是否适合你。
function getMedItemResponse(lastFormResponse){
var responseItems = lastFormResponse.getItemResponses();
Logger.log(responseItems);
for (var i = 0; i < responseItems.length; i++){
var responseItem = responseItems[i];
if(responseItem.getItem().getTitle() == "Individual Meds"){
var medItemResponse = responseItems[i].getResponse();
}
}
Logger.log(medItemResponse);
}