コードを次のように動作させたいのですが、週の任意の日付を選択すると、その週の前の月曜日の日付が返されます。たとえば、2013 年 1 月 8 日を選択すると、2013 年 1 月 7 日が自動的に返されます。コードは次のとおりです。
var dateValue = document.getElementById("OurDate").value; //OurDate is the textbox where I am giving the date as input
var d = new Date(dateValue);
var newDate = new Date(); ;
var day = d.getDay();
if (day == "0")
newDate.setDate(d.getDate() - 6);
else if (day == "1")
newDate = d;
else if(day=="2")
newDate.setDate(d.getDate() - 1);
else if(day=="3")
newDate.setDate(d.getDate() - 2);
else if(day=="4")
newDate.setDate(d.getDate() - 3);
else if(day=="5")
newDate.setDate(d.getDate() - 4);
else if (day == "6")
newDate.setDate(d.getDate() - 5);
alert(newDate);
このコードは、1 月のどの日付でも正常に機能します。しかし、私が2月または他の月に日付を指定するとき。1月の日付を表示しています。たとえば、2013 年 2 月 19 日を選択すると、2013 年 2 月 18 日が返されますが、2013 年 1 月 18 日が返されます。この問題の助けはありますか?前もって感謝します