2016-12-29 4 views
1

Я хочу отключить 2 дня после сегодняшнего дня с помощью jquery datepicker, например, сегодня - 12/29/2016. Я хочу включить дату с 1 января 2012 года. Я смотрю на кого-то код в jsfiddle, но я не знаю, что я должен править https://jsfiddle.net/AcbUf/574/отключить через 2 дня после сегодняшнего дня datepicker

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 да, но я хочу включить запуск 1 января 2017 года, поэтому менее 1 января 2017 будет отключен – user7344301

+0

N после 1 января 2017 года все еще включите пожалуйста – user7344301

ответ

3

Вы можете установить minDate переменную '3'. поэтому он будет начинаться с двух дней после того, как от текущей даты:

Проверьте это:

набор minDate: 3

+0

waow amazing !! оно работает! thanksss – 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'); 
}); 

}); 
Смежные вопросы