datetime - 默认日期分配失败
问题描述
我不知道我在这里错过了什么。只要用户在对话框中输入一些日期,一切正常,但如果用户将对话框留空,我希望拥有d1
并d2
设置预定义的日期,但它不起作用:
var d1, d2, d1i, d2i;
// set default initial dates
d1i = "01/01/2010";
d2i = "01/01/2020";
d1 = new Date(Browser.inputBox("Insert first day in format M/D/Y. Leave empty for default " + d1i));
d2 = new Date(Browser.inputBox("Insert last day in format M/D/Y. Leave empty for default " + d2i));
// If the dialog boxes are left empty, set d1 and d2 with default values
if (d1 == "") {d1 = new Date(d1i);}
if (d2 == "") {d2 = new Date(d2i);}
var events = cal.getEvents(d1, d2, {search: text});
var sheet = SpreadsheetApp.getActiveSheet();
for (var i = 0; i < events.length; i++) {
var row = i + 2;
var details = [[
events[i].getTitle(),
events[i].getDescription(),
events[i].getLocation(),
events[i].getStartTime(),
events[i].getEndTime(),
myformula_placeholder
]];
var range = sheet.getRange(row, 1, 1, 6);
range.setValues(details);
}
我也试过:
if (d1 == "") {d1 = d1i;}
if (d2 == "") {d2 = d2i;}
没有成功。不使用默认日期。
解决方案
好的,如果输入框为空,我希望将 d1 和 d2 设置为空字符串。相反,d1 和 d2 设置为值字符串“无效日期”。现在我改变了代码:
if (d1 == "Invalid Date") { d1 = d1i;}.
if (d2 == "Invalid Date") { d2 = d2i;}
非常感谢任何更好的解决方案。谢谢
推荐阅读
- erlang - Ubuntu 20.04.1 LTS:错误:找不到“wxe_driver.so”
- sqlite - 在颤振更新时丢失 Sqlite
- python - 找到两个特定的子字符串并将它们添加到计数器,然后打印出计数器
- amazon-web-services - IE Edge 不支持 Lambda@Edge HSTS
- terminology - 当一组四个十六进制字符(8 列)时,数据格式是什么?
- heroku - 在已部署的 heroku 应用程序中找不到上传的媒体
- r - group_by 和 pmap 对每组的每一行进行分段操作(ifelse vs case_when)
- html - 如何使输入不可见但不隐藏?
- reactjs - 使用 ag 网格反应功能组件无法通过上下文调用父函数
- ios - Xcode Bot 错误“不再支持已配置的目标...”