use*_*564 5 javascript jquery jquery-ui datepicker
我正在使用jQuery UI datepicker,我有一个按钮,可以将所选日期向前更改一天,还有一个按钮可以将所选日期向后更改一天.现在,我的"前一天"按钮工作正常.如果多次单击我的上一个按钮然后单击我的"第二天"按钮,它只会增加一次日期.例如,如果将datepicker设置为2014年1月10日并单击"第二天"按钮,它将更新为2014年1月11日,但如果再次单击它,则不会发生任何事情.如果我点击"第二天"按钮而没有先单击"前一天"按钮,它将正常工作.这是我的jQuery:
var currentDay = new Date();
var nextDay = new Date();
var previousDay = new Date();
$('.next-day').each(function() {
$(this).on("click", function () {
if (previousDay < currentDay) {
nextDay.setDate(previousDay.getDate() + 1);
} else {
nextDay.setDate(nextDay.getDate() + 1);
}
$('#to').datepicker("setDate", nextDay);
$('#from').datepicker("setDate", nextDay);
});
});
Run Code Online (Sandbox Code Playgroud)
编辑:这是一个jsFiddle http://jsfiddle.net/p2T2g/
ade*_*neo 14
事情并不那么难
$('.next-day').on("click", function () {
var date = $('#picker').datepicker('getDate');
date.setTime(date.getTime() + (1000*60*60*24))
$('#picker').datepicker("setDate", date);
});
$('.prev-day').on("click", function () {
var date = $('#picker').datepicker('getDate');
date.setTime(date.getTime() - (1000*60*60*24))
$('#picker').datepicker("setDate", date);
});
Run Code Online (Sandbox Code Playgroud)
当您考虑夏令时时,上述解决方案并不完全正确 - 例如,像英国这样的国家,你将短1小时,下面更好地做1天增量 -
$('.next-day').on("click", function () {
var date = $('#picker').datepicker('getDate');
date.setDate(date.getDate() + 1)
$('#picker').datepicker("setDate", date);
});