2016-12-29 93 views
1

我想今天后jQuery日期選擇器禁用2天后,例如今天是12/29/2016我希望從2017年1月1日啓用日期。我在看的的jsfiddle別人的代碼,但我不知道我應該怎麼修改 https://jsfiddle.net/AcbUf/574/今天datepicker後2天禁用

的Html

<input type="text" id="from" /> 
<input type="text" id="to" /> 

的js

$(document).ready(function() { 
var d = new Date(); 
var monthNames = ["January", "February", "March", "April", "May", "June", 
    "July", "August", "September", "October", "November", "December"]; 
today = monthNames[d.getMonth()] + ' ' + d.getDate() + ' ' + d.getFullYear(); 

$('#to').attr('disabled', 'disabled'); 
$('#from').datepicker({ 
    defaultDate: "+3d", 
    minDate: 1, 
    maxDate: "+3M", 
    dateFormat: 'dd M yy', 
    showOtherMonths: true, 
    changeMonth: true, 
    selectOtherMonths: true, 
    required: true, 
    showOn: "focus", 
    numberOfMonths: 1, 
}); 

$('#from').change(function() { 
    var from = $('#from').datepicker('getDate'); 
    var date_diff = Math.ceil((from.getTime() - Date.parse(today))/86400000); 
    var maxDate_d = date_diff+7+'d'; 
    date_diff = date_diff + 'd'; 
    $('#to').val('').removeAttr('disabled').removeClass('hasDatepicker').datepicker({ 
     dateFormat: 'dd.mm.yy', 
     minDate: date_diff, 
     maxDate: maxDate_d 
    }); 
}); 

$('#to').keyup(function() { 
    $(this).val(''); 
    alert('Please select date from Calendar'); 
}); 
$('#from').keyup(function() { 
    $('#from,#to').val(''); 
    $('#to').attr('disabled', 'disabled'); 
    alert('Please select date from Calendar'); 
}); 
}); 
+0

你可以添加html代碼嗎? – sebasaenz

+0

嗨@charlietfl是的,但我想啓用啓動2017年1月1日,所以比2017年1月1日將被禁用 – user7344301

+0

N 2017年1月1日後仍然啓用請 – user7344301

回答

3

您可以設置minDate變量'3'。所以它會從後兩天開始從當前日期:

檢查:

設置minDate: 3

+0

哇哇!有用!謝謝 – user7344301

+0

標記爲綠色勾號。如果你覺得它有用。 –

0

您需要從最新提供加兩個幾天喜歡:

$(document).ready(function() { 
    var d = new Date(); 
    var monthNames = ["January", "February", "March", "April", "May", "June", 
     "July", "August", "September", "October", "November", "December"]; 
    today = monthNames[d.getMonth()] + ' ' + d.getDate() + ' ' + d.getFullYear(); 

    $('#to').attr('disabled', 'disabled'); 
    $('#from').datepicker({ 
     defaultDate: "+3d", 
     minDate: 1, 
     maxDate: "+3M", 
     dateFormat: 'dd M yy', 
     showOtherMonths: true, 
     changeMonth: true, 
     selectOtherMonths: true, 
     required: true, 
     showOn: "focus", 
     numberOfMonths: 1, 
    }); 

    $('#from').change(function() { 
     var from = $('#from').datepicker('getDate'); 
     var date_diff = Math.ceil((from.getTime() - Date.parse(today))/86400000); 
     var maxDate_d = date_diff+7+'d'; 
     date_diff = date_diff + 'd'; 
     $('#to').val('').removeAttr('disabled').removeClass('hasDatepicker').datepicker({ 
      dateFormat: 'dd.mm.yy', 
      minDate: date_diff+2+'d', 
      maxDate: maxDate_d 
     }); 
    }); 

    $('#to').keyup(function() { 
     $(this).val(''); 
     alert('Please select date from Calendar'); 
    }); 
    $('#from').keyup(function() { 
     $('#from,#to').val(''); 
     $('#to').attr('disabled', 'disabled'); 
     alert('Please select date from Calendar'); 
    }); 

}); 
1

按您的問題請用這個新代碼嘗試

另外這裏是小提琴鏈接https://jsfiddle.net/avadh/21829x0b/

$(document).ready(function() { 
var dt = new Date(); 
dt.setDate(dt.getDate() + 2); 
var d = new Date(); 
var monthNames = ["January", "February", "March", "April", "May", "June", 
    "July", "August", "September", "October", "November", "December"]; 
today = monthNames[d.getMonth()] + ' ' + d.getDate() + ' ' + d.getFullYear(); 

$('#to').attr('disabled', 'disabled'); 
$('#from').datepicker({ 
    defaultDate: "+3d", 
    minDate: dt, 
    maxDate: "+3M", 
    dateFormat: 'dd M yy', 
    showOtherMonths: true, 
    changeMonth: true, 
    selectOtherMonths: true, 
    required: true, 
    showOn: "focus", 
    numberOfMonths: 1, 
}); 

$('#from').change(function() { 
    var from = $('#from').datepicker('getDate'); 
    var date_diff = Math.ceil((from.getTime() - Date.parse(today))/86400000); 
    var maxDate_d = date_diff+7+'d'; 
    date_diff = date_diff + 'd'; 
    $('#to').val('').removeAttr('disabled').removeClass('hasDatepicker').datepicker({ 
     dateFormat: 'dd.mm.yy', 
     minDate: date_diff, 
     maxDate: maxDate_d 
    }); 
}); 

$('#to').keyup(function() { 
    $(this).val(''); 
    alert('Please select date from Calendar'); 
}); 
$('#from').keyup(function() { 
    $('#from,#to').val(''); 
    $('#to').attr('disabled', 'disabled'); 
    alert('Please select date from Calendar'); 
}); 

});