我的日期数据库中有一列,用于存储用户提供工作时选择的日期。目前以这种方式形成:“ 2019年2月15日星期五”。
我希望能够将其与当前日期进行比较,该日期的格式为:“ 2019-01-27”
我猜想,最好的方法是将日期选择器格式转换为日期格式,然后进行比较。这是当有人注册时当前用于日期选择器的代码。
<div class="form-group">
<label for="location" class="control-label">DATE</label>
<input type="text" id="datepicker" class="form-control" placeholder="Pick a
date" name="datepicker">
</div>
<script>
var picker = new Pikaday({ field: document.getElementById('datepicker') });
</script>
答案 0 :(得分:0)
我建议使用名为Momentjs的JavaScript插件。它可以轻松格式化日期,而不会引起基本的javascript麻烦。
将其添加到HTML中,靠近页面底部,但位于脚本标记之前:
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.js"></script>
然后在脚本中使用以下格式设置日期选择器值的格式:
var myDate = moment(picker.value).format('YYYY-MM-DD');
这是Momentjs文档: Momentjs Docs
答案 1 :(得分:0)
在整个页面中打开示例:
使用new Date
,然后可以提取day
,month
和year
并与另一个日期进行比较,您可以new Date("2006-05-1").getMonth() === new Date("2006-05-2").getMonth() &&
...
var picker = new Pikaday({
field: document.getElementById('datepicker')
});
const dateInput = document.getElementById('datepicker');
function handleChange() {
const date = new Date(dateInput.value),
formattedDate = `${date.getFullYear()}-${date.getMonth()+1}-${date.getDate()}`;
console.log(formattedDate)
}
dateInput.addEventListener("change", handleChange);
<script src="https://cdn.jsdelivr.net/npm/pikaday/pikaday.js"></script>
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/pikaday/css/pikaday.css">
<input type="text" id="datepicker">