我在寫一個包含日期選擇器的應用程序。當您點擊日期選擇器中的日期時,日期顯示在輸入字段(type =「text」)中。例如,如果您選擇未來的一天,它表明:jQuery:如何將輸入內容轉換爲日期對象?
2014年2月9日
所以你可以猜到格式爲DD/MM/YYYY。
對於應用程序,我需要計算所選日期和當前日期之間的天數。我已經知道如何用jQuery生成當前日期。但我不知道如何計算天數的時差。任何人都可以幫忙用代碼?
我在寫一個包含日期選擇器的應用程序。當您點擊日期選擇器中的日期時,日期顯示在輸入字段(type =「text」)中。例如,如果您選擇未來的一天,它表明:jQuery:如何將輸入內容轉換爲日期對象?
2014年2月9日
所以你可以猜到格式爲DD/MM/YYYY。
對於應用程序,我需要計算所選日期和當前日期之間的天數。我已經知道如何用jQuery生成當前日期。但我不知道如何計算天數的時差。任何人都可以幫忙用代碼?
H I,傳統的方法會是這個樣子。
從點符號格式的日期值開始,我們可以轉換爲dd/mm/yyyy格式。
鑑於日期字符串需要重新排序爲MM/DD/YYYY
var inputval = "09.02.2014".split(".");
var dateval = new Date(inputval[1]+"/"+inputval[0]+"/"+inputval[2]);
/* with our Date object we can now compare */
var currDate = new Date();
var diffDays = Math.round(Math.abs((dateval.getTime() - currDate.getTime())/(24*60*60*1000)));
的var diffdays =
快速的日期更新爲註釋,比較代碼片段取自:
How to calculate the number of days between two dates using JavaScript?
值得提及將所有這些添加到可重用功能中。
function daysDifferenceFromToday(datestr) {
var inputval = datestr.split(".");
var dateval = new Date(inputval[1]+"/"+inputval[0]+"/"+inputval[2]);
var currDate = new Date();
return Math.round(Math.abs((dateval.getTime() - currDate.getTime())/(24*60*60*1000)));
}
/* usages */
alert(daysDifferenceFromToday("09.02.2014"));
if(daysDifferenceFromToday("05.02.2014")>2) {
...
}
減去兩個日期將返回在毫秒跨越然後將其轉換爲天:
function daydiff(first, second) {
return (second-first)/(1000*60*60*24)
}
alert(daydiff(date1, date2));
謝謝你,但是你在dateval中的操作提供了錯誤的日期:它提供了9月2日......但相反它需要提供2月9日......我該如何解決這個問題? –
噢好點,會更新答案... –
只是再次更新,因爲我錯誤地從引用鏈接複製了'oneday'變量,現在更新以顯示在可重複使用的實用程序 –