我在输入字段中有一个datepicker
,我第一次打开它时的默认日期是今天的日期,这就是我想要的。
但是,当我选择日期并清除输入字段时,datepicker
仍然有选定的日期,我不想要
有谁知道为什么会发生这种情况以及如何防止这种行为?
答案 0 :(得分:36)
重置Datepicker小部件日期的正确方法如下:
$.datepicker._clearDate('#input_field_goes_here');
或者像这样:
$('#input_field_goes_here').datepicker('setDate', null);
无论哪种方式最适合你。
答案 1 :(得分:11)
请参阅http://codepen.io/alexgill/pen/yOQrwV
$(SELECTOR).datepicker('setDate', null);
答案 2 :(得分:5)
日历中的清除按钮。
$("#txtCalendar").datepicker({
showButtonPanel: true,
closeText: 'Clear',
onClose: function (dateText, obj) {
if ($(window.event.srcElement).hasClass('ui-datepicker-close'))
$("#txtCalendar").val('');
}
});
答案 3 :(得分:1)
只需添加此代码
即可}).keyup(function(e) {
if(e.keyCode == 8 || e.keyCode == 46) {
$.datepicker._clearDate(this);
}
});
即使它处于只读模式,您也可以使用退格键清除字段。 Source
答案 4 :(得分:0)
要真正重置所有内容,包括日期选择器弹出窗口中的选定年份,我必须执行以下操作:
$(SELECTOR).datepicker('setDate', new Date());
$(SELECTOR).datepicker('setDate', null);
仅执行最后一行,就会在先前选择的年份中显示在日期选择器中