2012-07-04 44 views
-1

我必須比較今天的日期與日曆日期(選擇日期使用日期選擇器ajax)。 如果日期差異超過7天,則生成警報。比較今天的日期與日曆日期(接下來的七天只有其他生成警報)

 var mydate = new Date();//Todays date 
     var theyear = mydate.getFullYear(); 
     var themonth = mydate.getMonth() + 1; 
     var thetoday = mydate.getDate(); 

     txtDate.value='04-Jul-2012';//date picker date in this format 
+0

的可能重複的[Javascript來比較兩個日期,從字符串,開始<=結束](http://stackoverflow.com/questions/2336086/javascript-比較兩個日期從字符串開始結束) –

+0

不重複它不同一個 – John

+0

這不是一個不同的。它需要完全相同的方法。那麼,是的,它不是*字符*是重複的。 –

回答

1
var datePicked = '26-Jun-2012'; 
var datems = Date.parse(datePicked.replace(/-/g, " ")); 
var dateNow = new Date(); 
dateNow.setHours(0,0,0,0); 
var msDiff = Math.abs(Number(dateNow) - datems); 
// 7 Days = 604 800 000 ms 
if(msDiff > 604800000) alert("Time difference greater 7 days"); 
+0

當我得到var datePicked = txtDate.value; – John

+0

沒有得到警報 – John

+0

是的,使用然後var datems = Date.parse(txtDate.value.replace(/ -/g,「」));代替。 –

2
var mydate = new Date(); //Todays date 
txtDate.value='16-Jul-2012'; //date picker date in this format 

var newDate = new Date(txtDate.value); //make date object 

var difference = Math.ceil((newDate-mydate)/(60*60*24*1000)); //calculate days 

if (difference > 7) alert('more than 7 days'); 

FIDDLE

+0

txtDate.value = '16 -Jul-2012';這是動態日期我怎麼做 – John

+0

Format =「dd-MMM-yyyy」 – John