2014-09-18 51 views
1

我有2個datepickers,在第一日期選擇,你可以選擇提前從今天的日期,在第二個日期選擇器的限制必須是: 5天從第一個日期選擇的日期MINDATE 90後日期從第一次約會作爲最大日期日期選擇器jQuery UI的使用限制

我有這個,但它沒有工作,有人可以幫助我嗎?

<script> 
$(function() { 
$("#datepicker").datepicker({ minDate: 0 }); 
}); 

function calc(){ 
var date_min = $('#datepicker').datepicker('getDate', '+5d'); 
var date_max = $('#datepicker').datepicker('getDate', '+90d'); 
$("#datepicker2").datepicker({ minDate: date_min,maxDate: date_max }); 
} 
</script> 
<p>Date: <input type="text" id="datepicker" onChange="calc()"></p> 
<p>Date2: <input type="text" id="datepicker2"></p> 

回答

0

我做了一個簡單的腳本您的問題http://jsfiddle.net/KBq48/35/

$("#datepicker1, #datepicker2").datepicker({ 
minDate: "+0", 
maxDate: "+2Y", 
defaultDate: "+1w", 
dateFormat: 'mm/dd/yy', 

beforeShow: function() {   
    var thedate = new Date($('#datepicker1').val()); 
    var minDate = new Date(thedate.setDate(thedate.getDate() + 5)); 
    var maxDate = new Date(thedate.setDate(thedate.getDate() + 90)); 
    $('#datepicker2').datepicker("option", "minDate", minDate); 
    $('#datepicker2').datepicker("option", "maxDate", maxDate); 
} 
}); 

希望它能幫助:)

0

你應該能夠只抓的價值,並設置最小和最大距離那裏。試試這個:

function calc(){ 
    var date_value = $('#datepicker').datepicker().val(); 
    var dateValue = new Date(date_value);  
    $("#datepicker2").datepicker({ 
     changeYear: true, 
     minDate: '+5d', 
     maxDate: '+90d', 
     defaultDate: dateValue, 
    }); 
}