Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何更改我的Google应用程序脚本代码,以允许将多个文件上载到Google Drive?_Javascript_Google Apps Script - Fatal编程技术网

Javascript 如何更改我的Google应用程序脚本代码,以允许将多个文件上载到Google Drive?

Javascript 如何更改我的Google应用程序脚本代码,以允许将多个文件上载到Google Drive?,javascript,google-apps-script,Javascript,Google Apps Script,我开发了一个网络表单,可以连接到Google Drive,并允许将文件上传到特定文件夹。当前代码只上传第一个选定的文件,我希望能够上传所有选定的文件。我现在的代码贴在下面。有什么建议吗 index.html 智能HR连接数据收集 请上传您的工资账户表&;您最后的日记账分录: var文件, reader=newfilereader(); //将文件上传到谷歌硬盘 reader.onloadend=函数(e){ google.script.run .withSuccessHandler(

我开发了一个网络表单,可以连接到Google Drive,并允许将文件上传到特定文件夹。当前代码只上传第一个选定的文件,我希望能够上传所有选定的文件。我现在的代码贴在下面。有什么建议吗

index.html


智能HR连接数据收集
请上传您的工资账户表&;您最后的日记账分录:


var文件, reader=newfilereader(); //将文件上传到谷歌硬盘 reader.onloadend=函数(e){ google.script.run .withSuccessHandler(showMessage) .UploadFileToLogleDrive( e、 target.result,file.name, $('input#DifferentiedName').val() ); }; 函数showMessage(e){ $('#progress').html(e); } 功能表单已提交(状态){ document.getElementById('genericForm').style.display='none';//与您的表单名称或提交后想要消失的内容匹配 document.getElementById('output')。innerHTML=status;//显示在具有'output'id的项中 file=$('#file')[0]。文件[0]; reader.readAsDataURL(文件); showMessage(“上传文件…”); }
您可以参考本教程

function doGet() {
  return HtmlService.createHtmlOutputFromFile('form')
    .setSandboxMode(HtmlService.SandboxMode.IFRAME);
}


function uploadFileToDrive(base64Data, fileName, dropbox) {
  try{
    var splitBase = base64Data.split(','),
        type = splitBase[0].split(';')[0].replace('data:','');

    var byteCharacters = Utilities.base64Decode(splitBase[1]);
    var ss = Utilities.newBlob(byteCharacters, type);
    ss.setName(fileName);

    //var dropbox = "WTELNSD2016"; // Folder Name
    var folder, folders = DriveApp.getFoldersByName(dropbox);

    if (folders.hasNext()) {
      folder = folders.next();
    } else {
      folder = DriveApp.createFolder(dropbox);
    }
    var file = folder.createFile(ss);
    return file.getName();
  }catch(e){
    return 'Error: ' + e.toString();
  }
}
如本文所述,多属性仅在IFRAME模式下工作,但文件输入在IFRAME模式下中断

希望这有帮助