Google apps script GUI窗体不显示

Google apps script GUI窗体不显示,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我被卡住了。。。我的代码不想显示我的GUI表单 如果我试图添加这一行:sh=SpreadsheetApp.getActive()在sh.show(app)之前-脚本在脚本编辑器中工作正常。但是如果我试图将其部署为web应用程序,则脚本不起作用 function doGet() { var app = UiApp.createApplication().setTitle('test online').setHeight(400).setWidth(600); var dFormat = U

我被卡住了。。。我的代码不想显示我的GUI表单

如果我试图添加这一行:
sh=SpreadsheetApp.getActive()
sh.show(app)
之前-脚本在脚本编辑器中工作正常。但是如果我试图将其部署为web应用程序,则脚本不起作用

function doGet() {
  var app = UiApp.createApplication().setTitle('test online').setHeight(400).setWidth(600);
  var dFormat = UiApp.DateTimeFormat.DATE_LONG
  var sh = SpreadsheetApp.openById(spreadsheetID);
  var settings = sh.getSheetByName('Name');
  var lastrowTime = sh.getSheetByName('Name').getLastRow();
  var settings = settings.getRange("A2:A" + lastrowTime).getValues();

  var main2 = app.createGrid(1, 4);
  var status = app.createLabel().setId('status').setWidth('200');
  var card = app.createTextBox().setName('card').setId('card').setWidth('50');

  var main1 = app.createGrid(6, 3);
  var placeA = app.createTextBox().setId('placeA').setName('placeA').setWidth('400');
  var placeB = app.createTextBox().setId('placeB').setName('placeB').setWidth('400');
  var phone = app.createTextBox().setId(('phone')).setName('phone').setWidth('200');
  var timeTo = app.createListBox(false).setWidth(200).setName('timeTo').addItem("...").setVisibleItemCount(1);

   for (var i = 0; i < settings.length; i++) {
   timeTo.addItem(settings[i]);
  }

  var main = app.createGrid(4, 5);
  var date = app.createDateBox().setName('date').setFormat(dFormat);
  var hour = app.createListBox().setName('hour').setWidth('100');
  var min = app.createListBox().setName('min').setWidth('100');
  for (h=0;h<24;++h){
  if(h<10){var hourstr='0'+h}else{var hourstr=h.toString()}
  hour.addItem(hourstr)
  }
  for (m=0;m<60;++m){
  if(m<10){var minstr='0'+m}else{var minstr=m.toString()}
  min.addItem(minstr)
  }

  var refresh = app.createButton('Refresh')
  var button = app.createButton('Submit')

  var main3 = app.createGrid(1,3);
  var price = app.createLabel().setId('price').setWidth('400');
  var finalStatus = app.createLabel().setId('finalPrice').setWidth('400');

  main2.setWidget(0,0, app.createLabel('Client card: ')).setWidget(0,1, card).setWidget(0,3, status);

  main1.setWidget(1,0, app.createLabel('From')).setWidget(1,1,placeA);
  main1.setWidget(2,0, app.createLabel('To')).setWidget(2,1,placeB);
  main1.setWidget(4,0, app.createLabel('Mobile')).setWidget(4,1,phone);
  main1.setWidget(5,0, app.createLabel('Make a call?')).setWidget(5,1,timeTo);

  main.setWidget(1,0,app.createLabel('Data')).setWidget(1,1,app.createLabel('hour')).setWidget(1,2,app.createLabel('min'))
  main.setWidget(2,0,date).setWidget(2,1,hour).setWidget(2,2,min)
  main.setWidget(2,3,refresh).setWidget(2,4, button)

  main3.setWidget(0,0, price);
  main3.setWidget(0,1, finalStatus);

  var serverHandler = app.createServerHandler('show').addCallbackElement(main).addCallbackElement(main1).addCallbackElement(main2).addCallbackElement(main3);
  button.addClickHandler(serverHandler)

  var handler1 = app.createServerHandler('refresh').addCallbackElement(main).addCallbackElement(main1).addCallbackElement(main2).addCallbackElement(main3);
  refresh.addClickHandler(handler1)

  var handler2 = app.createServerHandler('checkDate').addCallbackElement(main).addCallbackElement(main1).addCallbackElement(main2).addCallbackElement(main3);
  date.addValueChangeHandler(handler2)

  app.add(main2)
  app.add(main1)
  app.add(main)
  app.add(main3)

 sh.show(app)
}
函数doGet(){
var app=UiApp.createApplication().setTitle(“在线测试”).setHeight(400)、setWidth(600);
var dFormat=UiApp.DateTimeFormat.DATE\u LONG
var sh=电子表格应用程序openById(电子表格ID);
var settings=sh.getSheetByName('Name');
var lastrowTime=sh.getSheetByName('Name').getLastRow();
var settings=settings.getRange(“A2:A”+lastrowTime).getValues();
var main2=app.createGrid(1,4);
var status=app.createLabel().setId('status').setWidth('200');
var card=app.createTextBox().setName('card').setId('card').setWidth('50');
var main1=app.createGrid(6,3);
var placeA=app.createTextBox().setId('placeA').setName('placeA').setWidth('400');
var placeB=app.createTextBox().setId('placeB').setName('placeB').setWidth('400');
var phone=app.createTextBox().setId(('phone')).setName('phone').setWidth('200');
var timeTo=app.createListBox(false).setWidth(200).setName('timeTo').addItem(“…”).setVisibleItemCount(1);
对于(变量i=0;i对于(h=0;h,您用来显示UI的方法是专门针对电子表格容器的。您可能已经阅读了这篇文章,以了解您的位置,但请重新阅读,尤其是
doGet()
的示例

在函数结束时,您只需
返回
您的UI应用程序实例。无需调用
显示
,也无需参考电子表格

function doGet() { // A script with a user interface that is published as a web app
                   // must contain a doGet(e) function.
  ...
  return myapp;
}