显示2个datepicker日期之间的天数?

时间:2013-02-11 16:54:08

标签: javascript jquery twitter-bootstrap datepicker

我希望尝试计算2个datepicker字段之间的天数,并在输入字段中显示该值。我搜索了很多不同的方法,但似乎无法使用。我正在使用boostrap-datepicker.js

我在这里创建了一个JS小提琴http://jsfiddle.net/KLpq7/201/,所以你可以看到我到目前为止的努力

我的JS如下

function days() {
        var a = $("#datepicker_start").datepicker('getDate').getTime(),
            b = $("#datepicker_end").datepicker('getDate').getTime(),
            c = 24*60*60*1000,
            diffDays = Math.round(Math.abs((a - b)/(c)));
        $("#totaldays").val(diffDays)
}

$('.datepicker')
.datepicker({format: 'DD, dd.mm.yyyy'})
.on('changeDate', function(ev){
$(this).datepicker('hide').blur();
});

在第一部分中我试图实现这一点,但它不起作用!

寻求帮助...

2 个答案:

答案 0 :(得分:4)

我修改了您正确计算差异的jsfiddle。有人认为我注意到你使用的是dd/mm/yyyy格式,默认情况下,JS希望日期为mm/dd/yyyy。最好是以“美式”方式处理日期差异计算,但如果必须使用dd/mm/yyyy的“正确”样式,那么我建议您查看Globalize库。< / p>

答案 1 :(得分:0)

function DateDiff(var date1, var date2) {
    return date1 - date2;
}

如果在Javascript中传入两个Date对象,则应该有效。返回的结果将是两者之间的毫秒数,可以很容易地转换为几天或几小时或几周等。