我将 pickadate.js 用于到达和离开日期,并希望出发日期不允许到达日期当天或之前的任何日期,并将出发日期设置为关注到达日期之后的日期。因此,如果在 2016 年 12 月 16 日到达,则只能选择从 12 月 17 日开始的出发日期。这是我的:
<script src="pickadate/lib/jquery.js"></script>
<script src="pickadate/lib/picker.js"></script>
<script src="pickadate/lib/picker.date.js"></script>
<script src="pickadate/lib/legacy.js"></script>
<script type="text/javascript">
$('#dateArrival').pickadate({
min: true,
max: new Date(2018,12,31),
format: 'd mmm yyyy', // Friendly format displayed to user
formatSubmit: 'yyyy-mm-dd', // Actual format used by application
hiddenName: true, // Allows two different formats
disable: [ // Dates already booked
new Date(2016,11,13),
new Date(2016,11,29)
]
});
$('#dateDepart').pickadate({
min: true,
max: new Date(2018,12,31),
format: 'd mmm yyyy',
formatSubmit: 'yyyy-mm-dd',
hiddenName: true,
disable: [
new Date(2016,11,13),
new Date(2016,11,29)
]
});
</script>
最佳答案
var frompic = $('#input_from').pickadate();
var topic = $('#input_to').pickadate();
初始化后,获取选择器对象
fromIns = frompic.pickadate('picker');
toIns = topic.pickadate('picker');
添加set
事件处理程序
fromIns.on('set', function(event) {
if ( event.select ) {
sel = fromIns.get('select'); //get entered date
newDte = new Date( sel.year,sel.month,sel.date ) ;
newDte.setDate(newDte.getDate()+1); // inc date by 1
toIns.set('min', new Date( newDte.getFullYear(),newDte.getMonth(),newDte.getDate()));
}
});
关于javascript - pickadate.js 根据第一个输入设置焦点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40352619/