2014-10-30 98 views
1

我使用eonasdan的bootstrap datepicker。 http://eonasdan.github.io/bootstrap-datetimepicker/Bootstrap datepicker事件

所以我使用它的文档中的事件。

以下是代码

$('#datetimepicker1,#datetimepicker2').datetimepicker({ 
    defaultDate:new Date(), 
    pickTime: false 
}); 

$("#datetimepicker1").on("dp.change",function (e) { 
    $('#datetimepicker2').data("DateTimePicker").setMinDate(e.date); 
}); 
$("#datetimepicker2").on("dp.change",function (e) { 
    $('#datetimepicker1').data("DateTimePicker").setMaxDate(e.date); 
}); 

,所以我想通过DATEPICKER2越来越提前DATEPICKER1

感谢的日期要提前1个月...

+0

可能重复[Javascript函数添加X个月到一个日期](http://stackoverflow.com/questions/2706125/javascript-function-to-add-x-months-to-a-date ) – max 2014-11-18 13:04:34

+0

@AbhiCool,你是否试图将'datetimepicker2'的当前日期设置为提前一个月,或者你是否试图将minDate设置为比'datetimepicker1'当前日期提前一个月? – Eonasdan 2015-01-27 22:37:43

+0

@Eonasdan,datetimepicker2的设置日期比datetimepicker1提前一个月,如果datetimepicker1更改,则datetimepicker2将提前一个月设置,datetimepicker2将被禁用,以便在datetimepicker1中指定的日期和其之前一个月之间选择日期。上面的代码 – AbhiCool 2015-03-27 11:36:20

回答

1

如果我理解你在做什么试图完成,您可以随时在e.date上添加一个月。

所有日期都作为时刻对象返回。

$('#datetimepicker1,#datetimepicker2').datetimepicker({ 
    defaultDate:new Date(), //can also be moment() 
    pickTime: false //depreciated in v4 by the way, 
        //use format: 'L' or format: 'formatstring' 
}); 

$("#datetimepicker1").on("dp.change",function (e) { 
    $('#datetimepicker2').data("DateTimePicker").setMinDate(e.date.add(1, 'M')); 
}); 
$("#datetimepicker2").on("dp.change",function (e) { 
    $('#datetimepicker1').data("DateTimePicker").setMaxDate(e.date.add(1, 'M')); 
}); 
+0

根据需要工作。非常感谢。只有最后一个帮助,即如果我更改datetimepicker1,那么datetimepicker2的默认值应该提前一个月,如果我更改datetimepicker2,那么datetimepicker1的默认值应该在一个月前。 – AbhiCool 2015-03-28 06:05:38