首页 文章

使用谷歌应用脚本提交对谷歌表单的回复[重复]

提问于
浏览
-1

这个问题在这里已有答案:

我正在尝试生成一个打开谷歌表单并填写它的脚本 .

我已经能够阅读文档并执行以下操作:使用它的ID选择表单,在“item”数组中获取问题列表,获取问题类型及其ID,按ID获取项目,返回通过各种类型,并对表格中的元素进行各种“选择” .

我无法1.对表单中的特定项目设置响应,或者2.提交带有响应的表单 . 无论我做什么,formReponse对象仍然是空的 .

formResponse,尽管是一个类,没有for循环出现为undefined,除非我有那个代码 .

function myFunction() {
   var form = FormApp.openById('1h_8Gz5GKwLqUdw249rpMWu6-AlrDJgUig-rdMCC7TWU');
   //form.addTextItem();
   var items =  form.getItems();
   Logger.log(items);
  // Access the text item as a generic item.
  var item1 = items[0];
  Logger.log(item1);
  var item1type = item1.getType();
  Logger.log(item1type);
  var item1id = item1.getId();
  var getitem1 = item1.asTextItem();
  var getitem1t = form.getItemById(item1id);
  var response = "tewtw";
  getitem1t.createResponse(response);

  var formResponses = form.getResponses();

  for (var i = 0; i < formResponses.length; i++) {
   var formResponse = formResponses[i];
   var itemResponses = formResponse.getItemResponses();
   for (var j = 0; j < itemResponses.length; j++) {
    var itemResponse = itemResponses[j];
    Logger.log('Response #%s to the question "%s" was "%s"',
         (i + 1).toString(),
        itemResponse.getItem().getTitle(),
        itemResponse.getResponse()); 
 }

formResponse.submit();
}

谢谢!

1 回答

  • -1

    您可以使用类似于Mogsdad shows here的代码来形成答案,该代码可以调用 onFormSubmit 触发的函数 . 这个"simulation"函数应该在同一个脚本项目中才能调用提交函数 .

相关问题