現在、このコードは明日と来月に機能します - 週末は機能しますが、月末に近づいているためエラーが発生しています。私の開始日は 8/31/12 に設定され、終了日は 8/34/12 です (Sql で DateTime に変換すると明らかにエラーがスローされます)。
day を追加し、 month を追加する計算は成功していますが、次の月に日を追加するとうまくいきません。これが起こっている理由を理解していると思います.dateを取得しています-「29」をintに変換してから追加します.12月の「来月」でも同じ問題が発生すると思います.
私の質問は、JavaScript の日付に日を追加する適切な方法 (または有効な方法) は何かということです。
var d = new Date();
var startdate;
var enddate;
if ($('._tomorrow').attr("checked") == "checked") {
startdate = [d.getMonth() + 1, d.getDate() + 1, d.getFullYear()].join('/');
enddate = [d.getMonth() + 1, d.getDate() + 2, d.getFullYear()].join('/');
}
if ($('._weekend').attr("checked") == "checked") {
startdate = [d.getMonth() + 1, d.getDate() + 6 - d.getDay(), d.getFullYear()].join('/');
enddate = [d.getMonth() + 1, ( d.getDate() + 6 - d.getDay()) + 2, d.getFullYear()].join('/');
}
if ($('._nextmonth').attr("checked") == "checked") {
startdate = [d.getMonth() + 2, 1, d.getFullYear()].join('/');
enddate = [d.getMonth() + 2, 29 , d.getFullYear()].join('/');
}