2012-02-08 14 views
0

私は2つの日付を選択するとチェックインとチェックアウトの日付をいくつか変更したいと思いますチェックアウト)、我々はちょうど日の違いを保存したいと思います:前の: - 2012年2月16日(チェックイン)と18/02/2012(チェックアウト)、日付の違いは2日ですこの違いを「夜間」(2日間)と呼ばれるテキストフィールドに保存したいだけです。Javaスクリプトを使用して日付の日(現在の日付と将来の日付)の違いを取得するには

私たちはチェックイン/チェックアウト日を取得するためにJavaScript(日付ピッカーコード)を使用しています。

おかげ

ロッド

答えて

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

に差があります。 – PPS

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; 
}, 

ですから、柱がすべき日々の変化!

1

これはあなたが私の解決策がjqueryのUI DatePickerプラグインに基づいている場合、違いを計算するためにjqueryUIDatepickerのonSelectイベントを使用することができます。

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; 
}