1

このフォーラムを検索したところ、多くの有用な回答が見つかりましたが、使用した回答の 1 つは特定の条件下でのみ機能します。

週の予定表にデータを入力しています。日付ピッカーから週の開始日 (月曜日) を決定する必要があるだけです。次に、その日付に追加して、テキスト フィールドに次の 6 日間を入力します。これは、日付ピッカーの選択が同じ月にある場合にのみ機能します。

したがって、2013 年 5 月 15 日の水曜日を選択すると、正しく返され、月曜日に 5 月 13 日、火曜日に 5 月 14 日などが入力されます。

しかし、2013 年 5 月 1 日の水曜日を選択すると、4 月 29 日の月曜日が正しく入力されますが、火曜日は 5 月 30 日となります (1 日ではなく 1 か月が追加されます)。

これは Application Craft で作成しているため、影響があるかどうかはわかりません。

これが私のコードです:

var curr = new Date(app.getValue("DatePicker2")); // get selected date
var first = curr.getDate() - curr.getDay() +1; // Adjust for monday start of week
var firstday = new Date(curr.setDate(first));
var secondday = new Date();
secondday.setDate(firstday.getDate()+1);

誰が私が間違っているかを見ることができますか?

ありがとう

タミー

4

1 に答える 1

0

ここ

secondday.setDate(firstday.getDate()+1)

setDate関数で日付のみを指定しているためMay、この場合はたまたま「この」月であると想定されます

だから、あなたはすることができます

secondday = new Date(firstday.getFullYear(), firstday.getMonth(), firstday.getDate()+1)
于 2013-05-19T02:26:24.197 に答える