0

如何使用谷歌应用脚​​本重新加载谷歌网站中的页面?我有一个创建表单的函数和另一个函数 doPost 来收集表单中提交的数据并将其写入电子表格。电子表格嵌入在同一页面中,我希望重新加载页面以更新电子表格中的视图。

我试图在 Site Services 和 Ui Services 中找到一些功能或服务。

这是代码

function doGet(e) {
var appRegistro = UiApp.createApplication().setTitle('Registre seu Atendimento!').setHeight(500);
var form = appRegistro.createFormPanel();
var flow = appRegistro.createFlowPanel();
var date=new Date();

//Construção do Menu
flow.add(appRegistro.createLabel("Data"));
  flow.add(appRegistro.createTextBox().setName("Data").setValue(date).setReadOnly(true).setText(Utilities.formatDate(date, "GMT -02:00", "dd/MM/yyyy HH:mm:ss")));
flow.add(appRegistro.createLabel("Ticket ID"));
flow.add(appRegistro.createTextBox().setName("TicketID"));
flow.add(appRegistro.createLabel("Ticket Type"));
flow.add(appRegistro.createListBox().setName("TicketType").addItem("TicketType1").addItem("ticketType2").addItem("TicketType3").addItem("TicketType4"));
flow.add(appRegistro.createLabel("Demandado por"));
flow.add(appRegistro.createListBox().setName("DemandedBy").addItem("DemandedBy1").addItem("DemandedBy1"));
flow.add(appRegistro.createLabel("Nome do Analista"));
flow.add(appRegistro.createListBox().setName("Analyst").addItem("Analyst1").addItem("Analyst1").addItem("Analyst1"));
flow.add(appRegistro.createLabel("Status"));
flow.add(appRegistro.createListBox().setName("Status").addItem("Resolvido").addItem("Em Tratamento"));
flow.add(appRegistro.createLabel("Descrição"));
flow.add(appRegistro.createTextArea().setName("Description").setSize(400, 100));
flow.add(appRegistro.createSubmitButton("Salvar"));
form.add(flow);
appRegistro.add(form);
return appRegistro;
 }

function doPost(e) {
var app=UiApp.createApplication();
var ss = SpreadsheetApp.openById("0AsXUq-Wd26qMdGFodkNqdERSc3NYaHhUQlRFeFNFQlE");
  var DataValue = e.parameter.Data;
  var TicketIDValue = e.parameter.TicketID;
  var TicketTypeValue = e.parameter.TicketType;
  var DemandedByValue = e.parameter.DemandedBy;
  var AnalystValue = e.parameter.Analyst;
  var StatusValue = e.parameter.Status;
  var DescriptionValue = e.parameter.Description;
  ss.getActiveSheet().appendRow([DataValue,TicketIDValue,TicketTypeValue,DemandedByValue,AnalystValue,StatusValue,DescriptionValue]).sort(1,false);
  return app;
  }
4

3 回答 3

0

无法使用 Google Apps 脚本,因为 Apps 脚本无法与浏览器对象交互。

于 2012-12-20T15:16:39.883 回答
0

我认为由于安全限制,您要完成的工作是不可能的。

于 2012-12-20T15:18:35.447 回答
0

其他回答者表示,我没有对电子表格做太多工作,但也许你可以解决这些限制。

  • 您能否在电子表格中编写脚本以刷新自身以轮询新数据?
  • Or could you move the form to be part of the Spreadsheet? Perhaps a button on the Spreadsheet could launch the form as a UiApp?
于 2012-12-20T15:27:27.953 回答