我正在使用flatpicker range 和 onChange
我这样做:
onChange: function(dateObj, dateStr) {
console.info(dateObj, dateStr);
这给了我控制台:
0: Tue Mar 10 2020 00:00:00 GMT+0100 (Ora standard dell’Europa centrale) {}
1: Thu Mar 12 2020 00:00:00 GMT+0100 (Ora standard dell’Europa centrale) {}
但我不知道如何将其转换为d m Y
寻找这种没有时间或区域的格式:1/23/2020
类似于:
var dateStart = new Date(data.from);
var dateEnd = new Date(data.to);
dateStart.setHours(0, 0, 0, 0);
dateEnd.setHours(0, 0, 0, 0);
最佳答案
Flatpicker 有一个用于指定格式的选项 (dateFormat
),在您的情况下,由于您正在使用范围,因此 onChange
回调的第二个参数将具有此格式:[日期值]到[日期值]
,要从此字符串创建所需格式的日期数组,可以使用secondArgument.split(' to ')
,这是一个例子:
flatpickr("#dateInput", {
mode: "range",
dateFormat: "d/m/Y",
onChange: (_, dateRangeStr) => {
const datesStrArr = dateRangeStr.split(" to ");
console.log(datesStrArr);
}
});
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css">
<script src="https://cdn.jsdelivr.net/npm/flatpickr"></script>
<input id="dateInput" />
关于javascript - 如何将 json 对象转换为日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60821554/