Javascript / jQuery两个datepickers计算日期范围

时间:2014-05-04 09:19:23

标签: javascript jquery

我使用下面的Javascript来计算日期范围内的天数(2 Zebra Datepickers)并将值传递给输入字段'nights'..然后处理表单。 虽然我的Javascript工作正常,但我无法使用jQuery .val()

获得相同的结果

使用Javascript:

setDifference = function(form)
{
var x = document.getElementById('startDate').value;
var y = document.getElementById('endDate').value;
var arr1 = x.split('-');
var arr2 = y.split('-');
var dt1 = new Date();
dt1.setFullYear(arr1[2], arr1[1], arr1[0]);
var dt2 = new Date();
dt2.setFullYear(arr2[2], arr2[1], arr2[0]);
document.getElementById('nights').value = (dt2.valueOf() - dt1.valueOf()) / (60 * 60 * 24 * 1000)
}

jQuery我到目前为止尝试过:

$(function() {
            var startDate = $('#startDate').val();
            var endDate = $('#endDate').val();
            var dateSplit = startDate.split("-");    
            var dateSplit = endDate.split("-");        
            dateDiff = new Date(dateSplit[1] + " " + dateSplit[0] + ", " + dateSplit[2]);
            var dateDiff = new Date(endDate - startDate);
            var days = dateDiff/1000/60/60/24;

            $('#nights').val(days);
    });

我得到的错误是我试过的所有浏览器上的“NaN”或“无效日期”。

1 个答案:

答案 0 :(得分:2)

您已宣布dateSplit两次。因此,startdate和enddate将是相同的。