google-apps-script - 谷歌表单脚本基于下拉列表创建新文件夹并将图像移动到它
问题描述
我想创建一个脚本,允许我根据表单上的名称下拉列表创建文件夹。根据选择的名称,我希望能够自动将上传的图片传输到该文件夹。那可能吗?不是程序员。我能够从应用程序中获取此信息,但出现错误:
TypeError: itemResponses[1].getResponse(...).Foreach 不是函数。
这是我找到的脚本。
function onFormSubmit(e) {
const folderId = "ID GOES HERE"; // 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[0].getResponse();
const subFolder = destFolder.getFoldersByName(folderName);
const folder = subFolder.hasNext() ? subFolder.next() : destFolder.createFolder(folderName);
// Move files to the folder.
itemResponses[1].getResponse().Foreach(id => DriveApp.getFileById(uploadedImageId).moveTo(folder));
}
解决方案
推荐阅读
- javascript - 我怎样才能在我的视图中显示所有问题以及他们自己的选择?
- sql - 无法将字符串转换为日期时间对象
- android - React Native Image https url不在较低的api 23中显示图像
- javascript - Javascript 继承链访问第一个父属性
- java - 错误:在类中找不到 main(String[]) 方法:Animal
- c# - 如何使自适应卡成为集体?
- php - 如果表中的行非常高,php mysql 表查询会给出 HTTP 500 错误
- ios - 可以共享 Apple 分发证书和密钥吗?
- sse - SSE 向量重新对齐?
- javascript - 为什么 JavaScript 'forEach' 在 Cordova 中不起作用