【发布时间】:2021-04-09 11:23:25
【问题描述】:
由于它没有运行,你如何让它与下面的这一行一起工作?
我正在尝试在谷歌表单上使用它
需要结果
“提交表单” - 我想在我的主文件夹中创建一个子文件夹(根据表单中的字段命名)
我希望上传的文件进入创建的子文件夹
错误代码
上午 7:14:19 错误
/TypeError: itemResponses[1].getResponse(...).forEach 不是函数
onFormSubmit@Code.gs:16/
itemResponses[1].getResponse().forEach(id => DriveApp.getFileById(id).moveTo(folder)); }
完整代码如下
function onFormSubmit(e) {
const folderId = "###"; // Please set top folder ID of the destination
folders.
const form = FormApp.getActiveForm();
const formResponses = form.getResponses();
const itemResponses = formResponses[formResponses.length-
1].getItemResponses();
Utilities.sleep(3000); // This line might not be required.
// Prepare the folder.
const destFolder = DriveApp.getFolderById(folderId);
const folderName = itemResponses[3].getResponse();
const subFolder = destFolder.getFoldersByName(folderName);
const folder = subFolder.hasNext() ? subFolder :
destFolder.createFolder(folderName);
// Move files to the folder.
itemResponses[1].getResponse().forEach(id =>
DriveApp.getFileById(id).moveTo(folder));
}
【问题讨论】:
-
如果没有看到相应的表格,很难说出问题所在。可以提供表格吗?问题似乎是
itemResponses[1].getResponse()没有返回列表。