2012-07-26 46 views
1

郝全部。 我想知道如何使用jquery.ui作爲日期的參考,在接下來的四個月中使用星期六的日期創建一個選擇。 我只是想創造這樣的事情:創建一個選擇與未來4個月的星期六的日期

<select> 
    <optgroup label="July"> 
    <option value="30/07/2012">30</option> 
    </optgroup> 
    <optgroup label="August"> 
    <option value="04/08/2012">4</option> 
    <option value="11/08/2012">11</option> 
    <option value="18/08/2012">18</option> 
    <option value="25/08/2012">25</option> 
    </optgroup> 
</select> 

...

任何幫助將大幅升值。

非常感謝您的關注。

+1

你試過了什麼? – 2012-07-26 16:30:03

+0

你應該至少發佈那個困惑的東西來修復它 – 2012-07-26 16:38:38

+1

你是否嘗試過使用內建的Date函數?我建議使用它,因爲日期計算可能會變得棘手。 – 2012-07-26 16:52:42

回答

3

只要你開始做任何類型的日期數學,你應該總是評估在那裏的前導日期庫。 jQueryUI的日期功能是圍繞日期選擇器的需求爲中心,而真棒,如果你不需要實際的日期選擇器,那麼你可以使用像Moment.js

有事找未來幾週六與瞬間變得更好,你可以這樣做:

var thisSaturday = moment().day(6); // 6th day of the week = saturday 

var num = 4, 
    upcomingSaturdays = [ 
     thisSaturday 
    ]; 

for (var i = 1; i <= num; i++) { 
    upcomingSaturdays.push(moment(thisSaturday).add('days', 7 * i)); 
} 

document.write(upcomingSaturdays.join('<br>')); 

而且on JSFiddle

+1

ps,document.write僅供JSFiddle中的可視化使用。很顯然,不要在生產代碼中使用document.write – jsoverson 2012-07-26 18:36:58

+0

非常感謝你的建議,jsoverson,我用了moment.js,它的功能就像一個魅力。 請投我們的問題,如果你相信。 – bobighorus 2012-07-27 00:04:25

0

這是我最後的代碼,這要歸功於jsoverson,我希望這將是對別人有所幫助:

var thisSaturday = moment().day(6); // 6th day of the week = saturday 
var num = 16, 
    upcomingSaturdays = [ 
     thisSaturday 
    ]; 
for (var i = 1; i <= num; i++) { 
    upcomingSaturdays.push(moment(thisSaturday).add('days', 7 * i).format("DD/MM/YYYY")); 
} 
jQuery(function() { 
    jQuery("select#date").html(upcomingSaturdays.join('<option>')); 
}); 
相關問題