-1

2 つのカレンダーの日付の差を計算する必要があります。さまざまな投稿を行いましたが、返される値が正しくありません。ここに私のコードがあります: -

    function getTotalDays()
{
    var date11 = document.getElementById("departure_date").value;
    var date22 = document.getElementById("arrival_date").value;

    var one_day=1000*60*60*24;

    var date1 = new Date(date11);
    var date2 = new Date(date22);

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

      // Calculate the difference in milliseconds
      var difference_ms = date2_ms - date1_ms;

      // Convert back to days and return
      var diffDays =  Math.round(difference_ms/one_day); 
    alert(diffDays);


}

差が 2 日間であると仮定すると、59 と表示されます。何が問題なのですか???

4

1 に答える 1

0

日付オブジェクトに渡す値が間違っている可能性があります。おそらく、次のようなことを行う方が簡単です。

var date1 = getDate(date11);
var date2 = getDate(date22);

getDate は次のとおりです。

function getDate(date) {
    //date format dd/mm/yyyy
    var dateArr = date.split('/');
    var date = new Date(dateArr[2], dateArr[1], dateArr[0]);
    return date;
}
于 2013-04-04T10:51:42.507 に答える