2012-03-10 108 views
0

我有一個搜索,並有一些答案打我的問題,但不夠接近。jQuery日曆與自定義日期範圍

我正在整理預訂系統,並在MySQL數據庫中有一系列「關稅」。

所有這些關稅都有一個日期範圍(以及其他值,如每晚的價格等,這與這個特定問題無關)。

使用jQuery.datePicker我想知道是否有一種方法,我可以只允許從MySQL數據庫的日期範圍內選擇日期範圍,並且任何未包含在這些範圍內的日期都將被刪除/不可選擇。

「關稅」佈局爲表如下:

id  date_from  date_to  color  price  min 
1   2012/02/01  2012/03/15  red   10   2 
2   2012/03/16  2013/04/10  green  7   0 
2   2012/05/16  2013/06/10  green  7   0 

所以,唯一的日期,應該是選擇從2012年2月1日至10日2012年4月和16 2012年5月至2012年10June,其餘衝壓出來。顏色,價格和最小值與此問題無關。

任何幫助或指向正確的方向將不勝感激!

編輯:

經過進一步搜索我結束了臉手掌觸摸自己,因爲我發現這裏的解決方案。對於其他人誰絆倒我的問題和需求的解決方案,去這裏:

jQuery ui: multiple ranges for date picker?

感謝那些回答!

+0

我會建議那些日期範圍存儲到一個數組。然後,當用戶點擊日期時,比較是否允許($ .inArray ...)並顯示消息。如果不允許,則顯示一條消息並保留日期選擇器。 – 2012-03-10 02:14:08

回答

0

jQuery datepicker具有「minDate」和「maxDate」參數。

$(selector).datepicker({ 
    'minDate': new Date(2012, 2, 1), 
    'maxDate': new Date(2012, 3, 15) 
}); 

或在你的PHP文件:

<script type="text/javascript"> 
$(function(){ 
    $("#date").datepicker({ 
     'dateFormat': 'm/d/yy', 
     'minDate': new Date(<?php echo $minDate->format('Y, m, d'); ?>), 
     'maxDate': new Date(<?php echo $maxDate->format('Y, m, d'); ?>) 
    }); 
}); 
</script>