如何从Google Form中的MultipleChoiceItem获取图像?

时间:2019-06-03 23:44:37

标签: google-apps-script google-form

我有一个带有多个选择题的Google表单,每个选择都有与之相关的图像。对于与此问题无关的任务,我需要编写一个脚本来捕获附加到受访者选择上的图像。

我尝试操纵ItemResponse和MultipleChoiceItem实例,但似乎找不到找到图像的方法。

function getChoiceImage (e) {
  return e.response.getItemResponses()[0].getResponse()
}

我希望它包含(除其他外)图像实例(ImageItem),然后可以将其应用于其他方法。相反,我得到的只是选择的文字说明。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

原来这是Google的open ticket

为解决这个问题,我编写了一个函数,将受访者选择的价值与该多项选择题中的选择数组进行比较,并返回找到的索引。这取决于将图像保存在文件中,以它们在表单中出现的顺序(通过返回的索引指定数组目标)以及在表单中包含MC Item的索引。

function getChoiceIndex (e, itemIndex) { 
  var choice = e.response.getItemResponses()[itemIndex].getResponse(), index;
  var choices = e.response.getItemResponses()[itemIndex].getItem().asMultipleChoiceItem().getChoices()
  // get index of selected choice in arr of choices  
  for (var i = 0; i < choices.length; i++) {
    if (choices[i].getValue() === choice) {
      index = i
    }
  }
  return index
}