@@ -1579,40 +1579,42 @@ $.extend(Datepicker.prototype, {
1579
1579
if ( ! showMonthAfterYear )
1580
1580
html += monthHtml + ( secondary || ! ( changeMonth && changeYear ) ? ' ' : '' ) ;
1581
1581
// year selection
1582
- inst . yearshtml = '' ;
1583
- if ( secondary || ! changeYear )
1584
- html += '<span class="ui-datepicker-year">' + drawYear + '</span>' ;
1585
- else {
1586
- // determine range of years to display
1587
- var years = this . _get ( inst , 'yearRange' ) . split ( ':' ) ;
1588
- var thisYear = new Date ( ) . getFullYear ( ) ;
1589
- var determineYear = function ( value ) {
1590
- var year = ( value . match ( / c [ + - ] .* / ) ? drawYear + parseInt ( value . substring ( 1 ) , 10 ) :
1591
- ( value . match ( / [ + - ] .* / ) ? thisYear + parseInt ( value , 10 ) :
1592
- parseInt ( value , 10 ) ) ) ;
1593
- return ( isNaN ( year ) ? thisYear : year ) ;
1594
- } ;
1595
- var year = determineYear ( years [ 0 ] ) ;
1596
- var endYear = Math . max ( year , determineYear ( years [ 1 ] || '' ) ) ;
1597
- year = ( minDate ? Math . max ( year , minDate . getFullYear ( ) ) : year ) ;
1598
- endYear = ( maxDate ? Math . min ( endYear , maxDate . getFullYear ( ) ) : endYear ) ;
1599
- inst . yearshtml += '<select class="ui-datepicker-year" ' +
1600
- 'onchange="DP_jQuery_' + dpuuid + '.datepicker._selectMonthYear(\'#' + inst . id + '\', this, \'Y\');" ' +
1601
- 'onclick="DP_jQuery_' + dpuuid + '.datepicker._clickMonthYear(\'#' + inst . id + '\');"' +
1602
- '>' ;
1603
- for ( ; year <= endYear ; year ++ ) {
1604
- inst . yearshtml += '<option value="' + year + '"' +
1605
- ( year == drawYear ? ' selected="selected"' : '' ) +
1606
- '>' + year + '</option>' ;
1607
- }
1608
- inst . yearshtml += '</select>' ;
1609
- //when showing there is no need for later update
1610
- if ( ! $ . browser . mozilla ) {
1611
- html += inst . yearshtml ;
1612
- inst . yearshtml = null ;
1613
- } else {
1614
- // will be replaced later with inst.yearshtml
1615
- html += '<select class="ui-datepicker-year"><option value="' + drawYear + '" selected="selected">' + drawYear + '</option></select>' ;
1582
+ if ( ! inst . yearshtml ) {
1583
+ inst . yearshtml = '' ;
1584
+ if ( secondary || ! changeYear )
1585
+ html += '<span class="ui-datepicker-year">' + drawYear + '</span>' ;
1586
+ else {
1587
+ // determine range of years to display
1588
+ var years = this . _get ( inst , 'yearRange' ) . split ( ':' ) ;
1589
+ var thisYear = new Date ( ) . getFullYear ( ) ;
1590
+ var determineYear = function ( value ) {
1591
+ var year = ( value . match ( / c [ + - ] .* / ) ? drawYear + parseInt ( value . substring ( 1 ) , 10 ) :
1592
+ ( value . match ( / [ + - ] .* / ) ? thisYear + parseInt ( value , 10 ) :
1593
+ parseInt ( value , 10 ) ) ) ;
1594
+ return ( isNaN ( year ) ? thisYear : year ) ;
1595
+ } ;
1596
+ var year = determineYear ( years [ 0 ] ) ;
1597
+ var endYear = Math . max ( year , determineYear ( years [ 1 ] || '' ) ) ;
1598
+ year = ( minDate ? Math . max ( year , minDate . getFullYear ( ) ) : year ) ;
1599
+ endYear = ( maxDate ? Math . min ( endYear , maxDate . getFullYear ( ) ) : endYear ) ;
1600
+ inst . yearshtml += '<select class="ui-datepicker-year" ' +
1601
+ 'onchange="DP_jQuery_' + dpuuid + '.datepicker._selectMonthYear(\'#' + inst . id + '\', this, \'Y\');" ' +
1602
+ 'onclick="DP_jQuery_' + dpuuid + '.datepicker._clickMonthYear(\'#' + inst . id + '\');"' +
1603
+ '>' ;
1604
+ for ( ; year <= endYear ; year ++ ) {
1605
+ inst . yearshtml += '<option value="' + year + '"' +
1606
+ ( year == drawYear ? ' selected="selected"' : '' ) +
1607
+ '>' + year + '</option>' ;
1608
+ }
1609
+ inst . yearshtml += '</select>' ;
1610
+ //when showing there is no need for later update
1611
+ if ( ! $ . browser . mozilla ) {
1612
+ html += inst . yearshtml ;
1613
+ inst . yearshtml = null ;
1614
+ } else {
1615
+ // will be replaced later with inst.yearshtml
1616
+ html += '<select class="ui-datepicker-year"><option value="' + drawYear + '" selected="selected">' + drawYear + '</option></select>' ;
1617
+ }
1616
1618
}
1617
1619
}
1618
1620
html += this . _get ( inst , 'yearSuffix' ) ;
0 commit comments