2011-03-08 131 views
7

是否有可能從datepicker的onSelect事件中獲取星期幾。jQuery ui datepicker,從onSelect獲取星期幾

我知道我可以得到一個月的一天,但我想要一週的一天。即使只有一天的指數會很好,例如0-6。

我知道你可以得到它在beforeShowDay(或類似)的事件,但我需要根據所選擇的星期幾來做出不同的反應。 這與設置開放時間有關。

我可以打服務器,並找出,但不會回來夠快。理想我想這一切在客戶端完成。

回答

13

這應該做的伎倆:

function(event, ui) { 
    var date = $(this).datepicker('getDate'); 
    var dayOfWeek = date.getUTCDay(); 
}; 

這具有不需要解析您選擇的日期選擇的文本字段的任何任意日期格式的優勢 - getDate方法返回一個本地JavaScript Date對象,然後您可以輕鬆提取所需的日期字段。

+0

你是血腥的天才!謝謝!! – SteveCl 2011-03-08 20:16:05

5

另外,如果你想在一週的某一天的實際名稱(不使用getUTCDay索引的像[「星期日」,「星期一」,...]一個數組,你可以使用日期選擇對象本身把這個交給你,就像下面

var curDate = $(this).datepicker('getDate'); 
var dayName = $.datepicker.formatDate('DD', curDate); 

這也可以使用用於替代DD獲得一週的域名(M),該月的長或短日照(MM或M)的縮短一天無論組件你後