在两个地方显示日期差异

时间:2013-10-28 20:17:35

标签: javascript

请查看此Fiddle

我有三个日期跨度。第一个日期跨度工作正常。它显示开始日期和结束日期之间的天数。

这是使用的数学...这基本上显示了A和B之间的差异(B - A)

function dateDifference() {
    if($("#payPeriodEndDate").val()!='' && $("#payPeriodEndDate").val()!='') {

        var diff = ($("#payPeriodEndDate").datepicker("getDate") - $("#payPeriodStartDate").datepicker("getDate")) / 1000 / 60 / 60 / 24;
        $('#labelPayPeriodDays').html(diff+" Days in Pay Period");
    }
}

我在那里添加了另一个日期字段(我们称之为C)

这被添加以显示日期C和A(C-A)之间的差异。

function dateDifference() {
    if($("#payPeriodEndDate").val()!='' && $("#payPeriodEndDate").val()!='') {

        var diff = ($("#payPeriodEndDate").datepicker("getDate") - $("#payPeriodStartDate").datepicker("getDate")) / 1000 / 60 / 60 / 24;
        $('#labelPayPeriodDays').html(diff+" Days in Pay Period");

function dateDifference() {
    if($("#lastDateOfAttendance").val()!='' && $("#lastDateOfAttendance").val()!='') {

        var diff = ($("#lastDateOfAttendance").datepicker("getDate") - $("#payPeriodStartDate").datepicker("getDate")) / 1000 / 60 / 60 / 24;
        $('#labelLastDateOfAttendance').html(diff+" Days of Attendance");
    }
}}}

然后它应该显示标签中C和A之间的天数。

它不起作用,我不明白为什么。我仔细检查了数学。

思考?

更新

我有一个更新的小提琴 here

我删除了这段代码......

function dateDifference() {
    if($("#lastDateOfAttendance").val()!='' && $("#lastDateOfAttendance").val()!='') {

除了两个尾随'}',现在它吐出巨大的毫秒数量,当我在最后出勤日期字段中输入日期时,它会将其从milisecs更改为以天为单位的数字。

1 个答案:

答案 0 :(得分:2)

这个怎么样? http://jsfiddle.net/NYMTH/

function dateDifference() {
    if($("#payPeriodEndDate").val()!='' && $("#payPeriodEndDate").val()!='') {

        var diff = ($("#payPeriodEndDate").datepicker("getDate") - $("#payPeriodStartDate").datepicker("getDate")) / 1000 / 60 / 60 / 24;
        $('#labelPayPeriodDays').html(diff+" Days in Pay Period");
    }
}    
function dateDifference2() {
    if($("#lastDateOfAttendance").val()!='' && $("#lastDateOfAttendance").val()!='') {

        var diff = ($("#lastDateOfAttendance").datepicker("getDate") - $("#payPeriodStartDate").datepicker("getDate")) / 1000 / 60 / 60 / 24;
        $('#labelLastDateOfAttendance').html(diff+" Days of Attendance");
    }
}

我将日期函数分成两部分。