我正在使用jQuery的日期選擇器與beforeShowDay
過濾器,只啓用星期二。如果我接近月末並且不再有星期二,則選擇器將打開到當前月份,並且沒有可用日期。如何在本月沒有可用日期的情況下使jquery datepicker在下個月打開?
如何使用選取器識別這種情況?有沒有辦法要求選擇月份的可用日期或類似的東西?
如果我確實認識到這種情況,如何讓用戶點擊時在下個月打開選擇器?
有沒有一種自動的方式來做到這一點?
我正在使用jQuery的日期選擇器與beforeShowDay
過濾器,只啓用星期二。如果我接近月末並且不再有星期二,則選擇器將打開到當前月份,並且沒有可用日期。如何在本月沒有可用日期的情況下使jquery datepicker在下個月打開?
如何使用選取器識別這種情況?有沒有辦法要求選擇月份的可用日期或類似的東西?
如果我確實認識到這種情況,如何讓用戶點擊時在下個月打開選擇器?
有沒有一種自動的方式來做到這一點?
試試這個jsfiddle我做了。
$(document).ready(function() {
$('#datepicker').datepicker({
defaultDate: nextTuesday(),
beforeShowDay: enableTuesdays
});
});
function enableTuesdays(date) {
// 0 =s unday, 1 = monday, 2 = tuesday, 3 = wednesday,
// 4 = thursday, 5 = friday, 6 = saturday
var day = date.getDay();
return [(day == 2), ''];
}
function nextTuesday() {
var today = new Date();
var offset = (today.getDay() < 2) ? 0 : 7;
var daysUntilTuesday = 2 + offset - today.getDay();
return '+'+daysUntilTuesday;
}
'defaultDate'是我所需要的,謝謝 – lincolnk 2012-04-06 20:37:06
使用日期選擇器setDate()
方法 - http://jqueryui.com/demos/datepicker/#method-setDate - 將日曆日期設置爲beforeShowDay
事件中的下一個可用星期二。
沒有爲抵達該處一週的下一個特定的一天一個例子:Get date of specific day of the week in JavaScript
我不想爲用戶設定一個日期,我只是想爲他們提前行事。 – lincolnk 2012-04-06 20:19:45
雖然這並不能解決找出背後的邏輯越來越日曆與下月開,如果沒有更多的可用日期。如果前端設計允許,你可以讓日期選擇器打開2個月的視圖,這樣你總會有日期選擇?
安裝程序會要求您傳入'numberOfMonths'作爲datepicker初始化的選項。
$('#datepicker').datepicker({ numberOfMonths: 2 });
如何發佈您的代碼? – j08691 2012-03-30 17:32:46