jQuery UI datepicker重置日期

时间:2013-06-03 10:52:42

标签: javascript jquery user-interface datepicker

我在输入字段中有一个datepicker,我第一次打开它时的默认日期是今天的日期,这就是我想要的。
但是,当我选择日期并清除输入字段时,datepicker仍然有选定的日期,我不想要
有谁知道为什么会发生这种情况以及如何防止这种行为?

5 个答案:

答案 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);

仅执行最后一行,就会在先前选择的年份中显示在日期选择器中