Skip to content

Commit 9ade710

Browse files
committed
Datepicker: Proper handling of empty strings for dates.
1 parent 7b523c2 commit 9ade710

File tree

1 file changed

+3
-6
lines changed

1 file changed

+3
-6
lines changed

ui/jquery.ui.datepicker.js

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1316,7 +1316,7 @@ $.extend(Datepicker.prototype, {
13161316
}
13171317
return new Date(year, month, day);
13181318
};
1319-
var newDate = (date == null ? defaultDate : (typeof date == 'string' ? offsetString(date) :
1319+
var newDate = (date == null || date === '' ? defaultDate : (typeof date == 'string' ? offsetString(date) :
13201320
(typeof date == 'number' ? (isNaN(date) ? defaultDate : offsetNumeric(date)) : new Date(date.getTime()))));
13211321
newDate = (newDate && newDate.toString() == 'Invalid Date' ? defaultDate : newDate);
13221322
if (newDate) {
@@ -1342,10 +1342,7 @@ $.extend(Datepicker.prototype, {
13421342

13431343
/* Set the date(s) directly. */
13441344
_setDate: function(inst, date, noChange) {
1345-
if ( !date ) {
1346-
inst.input.val( "" );
1347-
return;
1348-
}
1345+
var clear = !date;
13491346
var origMonth = inst.selectedMonth;
13501347
var origYear = inst.selectedYear;
13511348
var newDate = this._restrictMinMax(inst, this._determineDate(inst, date, new Date()));
@@ -1356,7 +1353,7 @@ $.extend(Datepicker.prototype, {
13561353
this._notifyChange(inst);
13571354
this._adjustInstDate(inst);
13581355
if (inst.input) {
1359-
inst.input.val(this._formatDate(inst));
1356+
inst.input.val(clear ? '' : this._formatDate(inst));
13601357
}
13611358
},
13621359

0 commit comments

Comments
 (0)