2011-09-21 43 views
3

我正在使用jQuery datepicker插件。我可以通過獲取月份名稱而不是數字

$("#datepicker").datepicker('getDate').getMonth()+1 

月數如何可以直接得到月份名稱(即不使用switch case)?

+0

看到這個SO提問/回答:http://stackoverflow.com/questions/476105/how-can-i-convert-string-to-datetime-with-format-specification-in-javascript – dacwe

+0

哎@dacwe,我經歷了這個問題,我正在尋找更直接的東西(如果存在的話),但它應該起作用。 – karthik

回答

17

如果你想要一個簡單的解決方案,這是它:

var months = [ "January", "February", "March", "April", "May", "June", 
       "July", "August", "September", "October", "November", "December" ]; 

var selectedMonthName = months[$("#datepicker").datepicker('getDate').getMonth()]; 

更復雜但更可定製的方式是使用格式化程序(我的評論)。然後參見this question and answer

+0

適合我。謝謝 – karthik

+0

雖然你正在複製很多功能,但是datepicker已經具備了所有這類功能。 – Dave

7

編輯:我猜getMonthName不起作用?

那麼真的 '正確' 的方式做到這一點是使用formatDate:http://docs.jquery.com/UI/Datepicker/formatDate

var monthName = $.datepicker.formatDate('MM', $("#datepicker").datepicker('getDate')); 
+0

犯錯。我在Firebug的控制檯上打了它,它說「.getMonthName不是函數」。你能不能更具體些。 – karthik

+0

這是正確的答案! – RominaV

2

這是一個非常古老的線程,但嘿,改進總是受歡迎(我希望!)

這種運作良好,如果你有設置可選的語言。

$("#datepicker").datepicker("option", "monthNames")[$("#datepicker").datepicker('getDate').getMonth()] 
相關問題