datepicker.iso8601Week() を使用して、選択した日付から週を計算しています (jQuery UI の日付ピッカーで)。
iso8601Week によると、1 週間は火曜日から月曜日までで、月曜日から日曜日までが必要です。これはどのように達成できますか?
datepicker.iso8601Week() を使用して、選択した日付から週を計算しています (jQuery UI の日付ピッカーで)。
iso8601Week によると、1 週間は火曜日から月曜日までで、月曜日から日曜日までが必要です。これはどのように達成できますか?
これがあなたを助けることを願っています。
申し訳ありませんが、詳細な単体テストを行うのに十分な時間がありませんでした。
function getDateRangeOfWeek(week){
var date = new Date();
var currentWeek = $.datepicker.iso8601Week(date);
date.setDate(date.getDate() - date.getDay() + 1 + (7 * (week - currentWeek)));
var result = [];
for(var i = 0;i < 7;i++){
var d = new Date();
d.setDate(date.getDate() + i)
result[i] = d;
}
return result;
};
月曜日開始
$('#date').DatePicker({
starts: 1
});
日曜日に開始
$('#date').DatePicker({
starts: 0
});
JQuery UI Datepickerのドキュメントによると、週は関数の月曜日から始まります。これは、 ISO 8601 標準iso8601Week
に従うことが想定されている場合にのみ正気です。異なる動作が発生している場合は、バグと見なします。ここで実装を確認できます。