2017-06-15 6 views
1

Kann ich die mindate und maxdate des datepicker abhängig von dem ausgewählten Jahr in der Dropdownliste setzen?Auto set mindate und maxdate von datepicker basierend auf ausgewählten Jahr in dropdown

Dropdown

<div class="col-sm-2" id="y_type" style="text-align:left;"> 
<select class="" style="width: 100%; display:inline-block;"> 
    @{ 
     DateTime datetime = DateTime.Now; 
     for (int i = 0; i <= 2; i++) 
     { 
      <option>@(datetime.AddYears(+i).ToString("yyyy"))</option> 
     } 
    } 
</select> 
</div> 

picker Code

$(document).ready(function() { 
     var dateCount = 1; 
     $('.holidayBody tr').each(function (e) { 
      var x = $(this).find('.holiday_date'); 
      x.attr('id', 'daterange' + dateCount); 
      x.attr('readonly', 'true'); 
      $('#daterange' + dateCount).datepicker({ dateFormat: "dd/mm/yyyy" }); 
      dateCount++; 
     }); 
    }); 

Wenn 2017 ausgewählt wird, kann die Datumsauswahl im Textfeld nur 2017 weniger und mehr Jahre wird

Antwort

1

diesen Code Versuchen

Sie Jahr mit yearRange

http://api.jqueryui.com/datepicker/#option-yearRange

var selectedYear; 
 
$('#dropdown').on('change',function(){ 
 
    selectedYear = $('#dropdown :selected').text(); 
 
    var start = new Date(); 
 
    start.setFullYear(selectedYear); 
 
    $("#daterange").datepicker("destroy"); 
 
    $("#daterange").datepicker({ 
 
    \t changeMonth: true, 
 
     changeYear: true, 
 
\t yearRange: start.getFullYear() + ':' + start.getFullYear() 
 
}); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script> 
 
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script> 
 
<link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/smoothness/jquery-ui.css"> 
 
<select id="dropdown" name="dropdown"> 
 
    <option value="select">select-year</option> 
 
    <option value="2011">2011</option> 
 
    <option value="2012">2012</option> 
 
    <option value="2013">2013</option> 
 
</select> 
 
<input type="text" id="daterange">

einstellen
0

Sie können deaktiviert werden versuchen Sie diese

$(function() { 
    var start = new Date(); 
    var end = new Date(); 

    $('#dob').datepicker({ 
     changeMonth: true, 
     changeYear: true, 
     yearRange: start.getFullYear() + ':' + end.getFullYear() 
    }); 
}); 
Verwandte Themen