获取两个日期之间的所有日期

pat*_*cko 3 jquery date

我有一个问题,用户选择一系列日期.然后我需要找出这两个选定日期之间的日期.他们通过jquery进入一些简单的事情

$('#from').val()+"-"+$('#to').val();

他们来自jqueryUI datepicker,他们只是看起来像

08/07/2013 - 08/09/2012

但我无法弄清楚如何逐步完成日期并确定两者之间的日期.我需要特定的日期,但这会变得非常复杂,例如月末和每个月的不同天数.在这个具体的例子中,我需要得到

08/07/2013, 08/08/2013, 08/09/2013

cfs*_*cfs 19

您可以使用该getDate方法从日期选择器中获取值,因为这将返回Date对象.然后,从开始日期开始将"当前"日期增加1天,并将其添加到数组,直到当前日期与结束日期相同.

请注意,在将数据添加到between数组时,您需要创建一个新的Date(),否则您只需引用该currentDate对象,所有值都将相同.

工作演示

var start = $("#from").datepicker("getDate"),
    end = $("#to").datepicker("getDate"),
    currentDate = new Date(start.getTime()),
    between = []
;

while (currentDate <= end) {
    between.push(new Date(currentDate));
    currentDate.setDate(currentDate.getDate() + 1);
}
Run Code Online (Sandbox Code Playgroud)