2012-02-08 57 views
0

我们希望对我的入住和退房日期进行一些更改,如选择两个日期(入住日期和入住日期退房),我们只是想存储days.for例如: - 2012年2月16日(办理登机手续)和2012年2月18日(办理退房手续)的差额,日期的差异为2天,我们只是想将这种差异存储在称为“夜晚”(2天)的文本字段中。我们如何通过Java脚本获取日期(当前日期和未来日期)的差异

我们正在使用JavaScript(日期选择代码)获取签入/签出日期。

感谢

回答

3
(checkoutdate.getTime() - checkindate.getTime())/(1000*60*60*24) 
+0

的差异。 – PPS 2012-02-08 05:53:00

1
<script language="JavaScript" type="text/javascript"> 
<!-- 

function days_between(date1, date2) { 

    // The number of milliseconds in one day 
    var ONE_DAY = 1000 * 60 * 60 * 24 

    // Convert both dates to milliseconds 
    var date1_ms = date1.getTime() 
    var date2_ms = date2.getTime() 

    // Calculate the difference in milliseconds 
    var difference_ms = Math.abs(date1_ms - date2_ms) 

    // Convert back to days and return 
    return Math.round(difference_ms/ONE_DAY) 

} 

//--> 
</script> 

参考http://www.mcfedries.com/javascript/daysbetween.asp

1

我用下面的方法以分钟为单位来计算的区别:

getMinutes: function (minDate, maxDate) { 
    var oneMinute = 1000 * 60; 
    return (maxDate - minDate)/oneMinute; 
}, 

所以你应该举st改变几分钟到几天!

1

它会去这样的事情,你可以使用onSelect事件jqueryUIDatepicker来计算差异看看它是否有助于我的解决方案是基于jQuery UI的DatePicker插件。

var CheckinDate=new Date(); 
var CheckoutDate=new Date(); 
var diff=new Date(); 
$('#checkin').datepicker({ 
     onSelect: function(dateText, inst) { 
     CheckinDate=datetext; 

    } 
    }); 

$('#checkout').datepicker({ 
    onSelect: function(dateText, inst) { 
    CheckoutDate=datetext; 
    diff=(CheckoutDate.getTime() - CheckinDate.getTime())/(1000*60*60*24); 


} 
}); 

现在你有怎样才能实现我们的代码,这些线路中的可变diff

1
var checkindate = Date.parseString($('hotelFromdate').value,dateFormat); 
var checkoutdate = Date.parseString($('hotelReturnDate').value,dateFormat); 
if(checkindate && checkoutdate && $('noOfNights')) 
{ 
var noOfNights = parseInt((checkoutdate.getTime() -checkindate.getTime())/(24*60*60*1000)); 
$('noOfNights').value = noOfNights; 
} 
相关问题