2013-06-20 84 views
0

我正在使用beforeShowDay函數來突出顯示與「已用」日期的MySQL查詢匹配的日子。在beforeShowDay函數中更改datepicker日期格式

我的日期選擇建立如下:

dp = jQuery("#datepicker").datepicker(
           { 
            minDate: +1, 
    maxDate: "+1M", 
    dateFormat: 'yyyy-mm-dd', 
    beforeShowDay: function(date) { 
                  q = q_dates[date]; 
                } 
               } 
               ); 

的問題是,日期值如下:週一至2013年5月27日00:00:00 GMT + 0700(東南亞標準時間)

我試過設置dateFormat。還試過date.toString('yyyy-mm-dd'),認爲它會像JavaScript日期對象一樣工作。

如何將日期轉換爲yyyy-mm-dd格式?

回答

1

如何使用Date.js插件。看看他們的documentation

也可以嘗試使用下面的代碼:

date.getFullYear() + "-" + date.getMonth() + "-" + date.getDate() ; 

編輯:

2位數的日期和月份,我建議看看這個SO question

var date = new Date("Mon May 27 2013 00:00:00 GMT+0700 (SE Asia Standard Time)"); 

alert(date.getFullYear() + "-" + ("0" + (date.getMonth() + 1)).slice(-2) + "-" + ("0" + date.getDate()).slice(-2)); 
+0

感謝您的建議。我看到了第二個地方。但月份和日期必須採用2位數字格式,我不知道採取一種快速而乾淨的方式來實現這一目標。而添加另一個插件似乎是矯枉過正,只是爲了重新格式化日期在一個地方。我真的很驚訝沒有一個簡單的格式化命令可以被調用來執行此操作。 –

+0

@Lee我已經更新了我的答案,希望這會對你有所幫助。 – Praveen

+0

謝謝。我正要發表評論,我在這裏找到了類似的解決方案:http://stackoverflow.com/questions/3605214/javascript-add-leading-zeroes-to-date –

相關問題