2010-05-25 84 views
1

不知如何下月設定只顯示活躍星期一:顯示下個月

我試圖做水木清華這樣的,但它不會工作

function onlyMondaysNextMonth(date){ 
    var day = date.getDay(); 
    var mDate = date.getMonth() + 1; 

    return { 
     minDate: mDate, 
    }  
    return [(day == 1),''];               
} 

謝謝。

回答

1

使用下面的代碼只啓用星期一從下月

var minDate = null; 
var now = new Date(); 
if (now.getMonth() == 11) { 
    minDate = new Date(now.getFullYear() + 1, 0, 1); 
} else { 
    minDate = new Date(now.getFullYear(), now.getMonth() + 1, 1); 
} 

/* create datepicker */ 
jQuery(document).ready(function() { 
    jQuery('#datepicker').datepicker({ 
     minDate: minDate,   
     constrainInput: true, 
     beforeShowDay: beforeShowDay 
    }); 
}); 

function beforeShowDay(date) { 
    var day = date.getDay(); 
    if (day == 1) 
     return [true] 
    return [false]; 

} 

工作樣品在http://elangovanr.com/samples/jquery/datepickermonday.html託管,供大家參考啓動。

+0

試過了你的代碼,但似乎沒有設置下個月出現。當日歷顯示時,它僅限制星期幾到星期一,但我們仍然在同一個月,而不是下一個。我們只是這樣做smth: beforeShowDay:function(date){ $(this).datepicker('option','minDate','+ 1m'); var day = date.getDay(); if(day == 1) return [true] return [false]; \t \t \t \t } 雖然它返回太多遞歸... – devjs11 2010-05-26 08:50:02

+0

已更新我的代碼。而不是使用'getYear'使用'getFullYear' – Elangovan 2010-05-26 10:07:55

+0

'beforeShowDay'可以簡化爲''function before beforehow(date){ return [date.getDay()== 1]; }' – 2010-05-26 10:10:03