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> 

...

どんな助けでも大歓迎です。

ご清聴ありがとうございました。

4

2 に答える 2

3

何らかの日付計算を開始したらすぐに、主要な日付ライブラリを常に評価する必要があります。jQUeryUI の日付機能は、datepicker のニーズに重点を置いています。すばらしいことですが、実際の日付ピッカーが必要ない場合は、Moment.jsのようなものを使用する方がよいかもしれません。

次のいくつかの土曜日を Moment で見つけるには、次のようにします。

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>'));

</p>

そしてJSFiddleで

于 2012-07-26T17:01:21.447 に答える
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>'));
});
于 2012-07-27T00:07:25.787 に答える