From: Felix Nagel Date: Mon, 24 Oct 2016 20:24:09 +0000 (+0200) Subject: Calendar: Clear value if an invalid min / max option value was given X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=f010087acae69dff67252236e4159c79124dd30b;p=jquery-ui.git Calendar: Clear value if an invalid min / max option value was given --- diff --git a/tests/unit/calendar/options.js b/tests/unit/calendar/options.js index c5bbdbf5a..ab352c4a0 100644 --- a/tests/unit/calendar/options.js +++ b/tests/unit/calendar/options.js @@ -187,7 +187,7 @@ test( "showWeek", function() { } ); test( "min / max", function( assert ) { - assert.expect( 17 ); + assert.expect( 19 ); // With existing date var prevButton = this.widget.find( ".ui-calendar-prev" ), @@ -231,6 +231,14 @@ test( "min / max", function( assert ) { .calendar( "value", "1/4/09" ); equal( this.element.calendar( "valueAsDate" ), null, "Min/max - value > max" ); + this.element.calendar( "option", { min: minDate } ); + this.element.calendar( "option", { min: "invalid" } ); + equal( this.element.calendar( "option", "min" ), null, "Min/max - invalid" ); + + this.element.calendar( "option", { min: maxDate } ); + this.element.calendar( "option", { max: null } ); + equal( this.element.calendar( "option", "max" ), null, "Min/max - null" ); + this.element .calendar( "option", { min: minDate, max: maxDate } ) .calendar( "value", "3/4/08" ); diff --git a/ui/widgets/calendar.js b/ui/widgets/calendar.js index 006332d1b..7e40313e7 100644 --- a/ui/widgets/calendar.js +++ b/ui/widgets/calendar.js @@ -723,7 +723,9 @@ return $.widget( "ui.calendar", { } if ( key === "max" || key === "min" ) { - if ( $.type( value ) === "date" || value === null ) { + if ( $.type( value ) !== "date" || value === null ) { + this._super( key, null ); + } else { this._super( key, value ); } return;