使用Flatpickr将结果中的当前日期设置为“今天”

时间:2018-10-04 17:38:24

标签: javascript jquery html flatpickr

我将Flatpickr用于日期选择器。但是,当我选择今天的日期时,我希望结果显示为“今天”。

jQuery(".datepicker").flatpickr({
    wrap: true,
    altInput: true,
    altFormat: "F j, Y",
    dateFormat: "Y-m-d",
    defaultDate: "today",
    instance.set('defaultDate', 'today');
});

这是我到目前为止尝试过的。 instance.set部分对我不起作用。也许我做错了。

下面是当前工作代码的代码段。我需要的是将当前显示的日期设置为“今天”,而不是日期本身。

jQuery(function() {
	initDatePicker();
});


function initDatePicker() {
	jQuery(".datepicker").flatpickr({
		wrap: true,
		altInput: true,
		altFormat: "F j, Y",
		dateFormat: "Y-m-d",
		defaultDate: "today"
	});
}
<link href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/flatpickr"></script>
<script>
  
</script>

<div class="input-group datepicker">
  <input type="text" class="form-control" data-input aria-describedby="date1">
  <div class="input-group-append">
    <button class="btn btn-secondary" type="button" id="date1" title="toggle" data-toggle><i class="icon-angle-down-4 mr-0"></i></button>
  </div>
</div>

1 个答案:

答案 0 :(得分:1)

@Lucian,我发现了处理onValueUpdateonReady(对于初步检查,因为defaultDate可能是今天的情况,就像您一样)的解决方案,并且可以更新private的值字段_input.value

尽管如此,我没有找到任何方法在不破坏封装的情况下在字段中设置“今天”一词-因为无法将该词解析为Date对象并引发错误。

我为您提供的代码是here。希望这会有所帮助!