繁体   English   中英

Google Apps脚本:检索网格项响应返回未定义

[英]Google Apps Script: Retrieving Grid Item Response Returns Undefined

无论我做什么,这都会为“ 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()的文档;

获取受访者提交的答案。 对于大多数类型的问题项目,这将返回一个字符串。 对于CheckboxItem问题,这将返回一个包含响应者选择的String []数组。 数组中字符串的顺序可能会有所不同。 对于GridItem问题,这将返回一个String []数组,其中索引n的答案与网格中第n + 1行的问题相对应。 如果受访者未在网格中回答问题,则该回答将返回为“”。 对于CheckboxGridItem问题,这将返回一个String [] []数组,其中第n行的答案对应于复选框网格中第n + 1行的问题。 如果受访者未在网格中回答问题,则该回答将返回为“”。

返回

Object —问题项答案的String或String []或String [] []

我尝试了另一种形式的尝试,它似乎可以工作,但是我不确定它是否对您有用。

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);
  }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM