2012-08-22 62 views
1

我正在使用一個插件,它在預訂表單上使用jQuery UI作爲其日曆,並希望顯示警報,並且如果第二個日期是少於可以說從第一天起7天,或者從第一天起超過30天。日曆中的jQuery UI最小/最大日期差異

所以[01.01.2012] + [02.01.2012]是行不通的

[01.01.2012] + [15.01.2012]會的工作,任何想法,我怎樣才能jQuery的實現這一目標?提前謝謝了!

回答

0

jsFiddle DEMO

基本上JIST這裏要說的是,你需要Date.parse()兩個日期(這使它們成毫秒),然後通過/ 1000分的millseconds(獲得秒)/ 60(獲得分鐘)/ 1440(得到日子)。

然後測試一下,看看它是否超過7,並且繁榮,你們全都定了!

$('#submit').on('click', function() { 
    var toDate = Date.parse($('#toDate').val()), 
     fromDate = Date.parse($('#fromDate').val()), 
     difference = toDate - fromDate; 

    var days = difference/1000/60/1440; 

    if (days < 7) { 
     alert('Please give at least 7 days between the dates!'); 
     return false; // stop from submitting   
    } 

    // VALID 
    else { 
     alert('success!'); 
    } 
});​ 
+0

會給這個旋轉很快:) – user1370288

1

您可以通過使用javascipt日期對象來實現。 我們假設Date1是您的第一個日期對象,Date2是第二個日期對象。

var dateMin = new Date(Date.parse(Date1)); //you may not need to parse. 
var dateMax = new Date(Date.parse(Date1)); //new Date(Date1) may work. Not sure 

dateMin.setDate(Date1.getDate() + 7); 
dateMax.setDate(Date1.getDate() + 15); 

if (Date2 < dateMax && Date2 > dateMin) { 
    //code 
} else { 
    //alert 
} 

你也可以做同樣的事情月,年,小時等。

+0

我也會給這個試試:) – user1370288