1

也许是一个基本问题,但我似乎无法在文档中找到参考。

我有一个电子表格和一个包含 FileUpload 和 Submit 小部件的 UI 表单。

function displayFileDialog() {

  var fileDialog = UiApp.createApplication()
  .setTitle("Select PROJECT XML File")
  .setHeight(100)
  .setWidth(200);
  var form = fileDialog.createFormPanel();
  var flow = fileDialog.createFlowPanel();
  var file = fileDialog.createFileUpload().setName("fileUL");      
  var button = fileDialog.createSubmitButton('submit'); 
  var textedit = fileDialog.createTextBox().setName("textBox");


  flow.add(file);      // add file to flo                                  
  flow.add(textedit);  // testing textedit
  flow.add(button);    // add button to flow                                 
  form.add(flow);      // add flow to form
  fileDialog.add(form);// add form to application

  SpreadsheetApp.getActiveSpreadsheet().show(fileDialog);  // Display dialog in spreadsheet.
}

运行此函数会按预期在工作表中显示 UI。

当按下提交按钮时,此doPost函数运行:

function doPost(e) {
  Logger.log("doPost - fileUL is-" + e.parameter.fileUL + "-");
  Logger.log("doPost - textEdit is-" + e.parameter.textBox + "-");
}

现在,如果我将一个小的 XML 文件加载到 FileUploader 中并将测试TESTING输入到 textEdit 中,我会在 Log 窗口中得到以下内容:

doPost-fileUL is-FileUpload-
doPost - textEdit is-TESTING-

不管文件是什么,它总是说FileUpload。我猜我错过了一些东西,因为 textEdit 有效,但是我不能同时调试和上传我不确定我在这里做错了什么。并且文档似乎没有任何进一步的信息。

我可能做错了什么?

4

1 回答 1

1

在您提供的文档的第一行:

FileUpload 的结果是“Blob”

您可以通过使用读取Blob的内容

e.parameter.fileUL.getDataAsString();
于 2013-02-27T21:25:21.730 回答