1

我正在尝试计算 2 个日期选择器字段之间的天数,并在输入字段中显示该值。我已经搜索了很多不同的方法,但似乎没有任何工作。我正在使用 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();
});

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

寻求帮助...

4

2 回答 2

4

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

于 2013-02-11T17:07:28.333 回答
0
function DateDiff(var date1, var date2) {
    return date1 - date2;
}

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

于 2013-02-11T16:59:34.650 回答