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
Google apps script 如何使用当前日期预填充createDateBox()或日期选择器字段?_Google Apps Script - Fatal编程技术网

Google apps script 如何使用当前日期预填充createDateBox()或日期选择器字段?

Google apps script 如何使用当前日期预填充createDateBox()或日期选择器字段?,google-apps-script,Google Apps Script,我在Google站点页面上创建了一个带有日期字段(日期选择器)的Ui。有没有办法用当前日期预先填充它?第二,有没有办法将年份与所选日期分开?以下是我目前掌握的代码: //Create elements for vPanel_01 var labelDate = app.createLabel("Date of event:"); var textBoxDate = app.createDateBox().setName("date").setStyleAttribute(

我在Google站点页面上创建了一个带有日期字段(日期选择器)的Ui。有没有办法用当前日期预先填充它?第二,有没有办法将年份与所选日期分开?以下是我目前掌握的代码:

    //Create elements for vPanel_01
    var labelDate = app.createLabel("Date of event:");
    var textBoxDate = app.createDateBox().setName("date").setStyleAttribute("color", "#a7a7a7");
我想从输入中分离出年份,以便在脚本中进行比较

有没有办法用当前日期预先填充它

以下代码执行所需的操作

var now = new Date();
var labelDate = app.createLabel("Date of event:");
var textBoxDate = app.createDateBox().setName("date").setStyleAttribute("color", "#a7a7a7").setValue(now);
有没有办法将年份与所选日期分开

请通过编写
将年份与所选日期分隔开来,说明您希望得到什么?您需要提取日期的一年吗?如果是,则执行以下操作

function doGet(e) {
  var app = UiApp.createApplication();
  var now = new Date();
  app.add(app.createLabel('Current Year: ' + now.getFullYear()));
  return app;
}
从日期框中提取年份的代码

function doGet(e) {
  var app = UiApp.createApplication();
  var now = new Date();
  var dateBox = app.createDateBox().setName('datebox').setValue(now);
  var label = app.createLabel(now).setId('label');
  var handler = app.createServerHandler('onBtnClick');
  handler.addCallbackElement(dateBox);
  var btn = app.createButton('Click Me').addClickHandler(handler);
  app.add(dateBox);
  app.add(label);
  app.add(btn);
  return app;
}

function onBtnClick(e) {
  var selectedDate = new Date(e.parameter.datebox);
  var year = selectedDate.getFullYear();
  var app = UiApp.getActiveApplication();
  var label = app.getElementById('label');
  label.setText('Selected Date: ' + selectedDate + ', Year: ' + year);
  return app;
}

下面是您的评论:如果我保留megabytes1024的示例,您应该向文本框(或验证输入的按钮)添加一个处理程序,并向该处理程序添加一个callback元素,然后,在处理程序函数中,您可以使用如下内容:

var dateObject = new Date(e.parameter.date); // 'date' is the name of the datepicker
当您拥有此日期对象时,您可以从中获得所需的任何内容,例如:

var fullyear = dateObject.getFullYear(); // will return full year in 4 digits


您也可能感兴趣。

谢谢!工作完美。就这一年而言,这就是我要做的:我的谷歌文档中有一个电子表格,里面有一张名为“2012”的表格(今年)。脚本将数据推送到该电子表格。当我选择一个日期并填写其他文本字段时,我需要脚本来检查年份是否发生了变化,如果发生了变化,请复制2012年的工作表并将其重命名为新的一年。因此,我需要选择的日期的年份,而不是预填充的当前日期…谢谢Serge-感谢您的帮助!