日期格式的应用程序脚本UI

时间:2014-03-08 13:08:55

标签: javascript google-apps-script

我正在使用Google Apps脚本DateBox。输出格式如下所示:

2014年3月7日星期五00:00:00 GMT + 0100(CET)

我希望这个日期能够进入Google日历。但Google日历日期格式如下所示:

2014年3月8日16:00:00 UTC

有什么方法可以解决这个问题吗?

DateBox:

  grid.setWidget(2, 0, app.createLabel('Tidpunkt:'));
  grid.setWidget(2, 1, app.createDateBox().setName('tid').setId('tid'));

Google日历输入:

 var date = e.parameter.tid;
  var lol = e.parameter.name;
  var lolz = e.parameter.info;


var event = CalendarApp.getCalendarById('company.com_7gv4ds@group.calendar.google.com').createEvent(lol, date);                                                                                                                          
    {description: lolz});

1 个答案:

答案 0 :(得分:0)

UiApp中的dateBox小部件返回一个与任何其他服务直接兼容的JavaScript date object,当然包括日历。

您看到的差异来自记录器,而不是来自对象本身,因此无关紧要。

这是一个用于演示的小代码:

    function doGet() {
      var app = UiApp.createApplication().setTitle('test');
      var date = app.createDateBox().setName('date');
      var buttonHandler = app.createServerClickHandler('show').addCallbackElement(date);
      var button = app.createButton("test",buttonHandler); 
      app.add(date).add(button);
      return app;
    }

    function show(e) {
      var app = UiApp.getActiveApplication();
      Logger.log('value of date is '+e.parameter.date+'\ntype is '+typeof(e.parameter.date)); 
      CalendarApp.getDefaultCalendar().createAllDayEvent('test title', e.parameter.date);
      app.add(app.createLabel('event created in your default Calendar'));
      return app;
    }

enter image description here