Javascript 使用谷歌应用程序脚本提交对谷歌表单的响应

Javascript 使用谷歌应用程序脚本提交对谷歌表单的响应,javascript,arrays,google-apps-script,Javascript,Arrays,Google Apps Script,我试图生成一个脚本,打开谷歌表单并填写它 我已经能够阅读文档并执行以下操作: 使用表单ID选择表单,获取“项目”数组中的问题列表,获取问题类型及其ID,按ID获取项目,按各种类型返回,并对表单中的元素进行各种“选择” 我一直没能做到。设置对表单中特定项的响应,或2。提交该表格并附上回复。无论我做什么,FormResponse对象仍然是空的 formResponse,尽管是一个类,但如果没有for循环,则会被认为是未定义的,除非我有该代码 function myFunction() { va

我试图生成一个脚本,打开谷歌表单并填写它

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

我一直没能做到。设置对表单中特定项的响应,或2。提交该表格并附上回复。无论我做什么,FormResponse对象仍然是空的

formResponse,尽管是一个类,但如果没有for循环,则会被认为是未定义的,除非我有该代码

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();
}
函数myFunction(){
var form=FormApp.openById('1h_8Gz5GKwLqUdw249rpMWu6-AlrDJgUig-rdMCC7TWU');
//form.addTextItem();
var items=form.getItems();
Logger.log(项目);
//作为常规项访问文本项。
var item1=项目[0];
Logger.log(第1项);
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(响应);
var formResponses=form.getResponses();
对于(var i=0;i

谢谢!

您可以使用类似于调用
onFormSubmit
触发函数的代码来“模拟”表单答案。此“模拟”“函数应位于同一脚本项目中,以便能够调用提交函数。

是否在电子表格中收集表单响应?如果是,我建议采用不同的方法。使用电子表格服务直接插入数据,而不是自动填写和提交表单。