ユーザーが開始日を入力すると、終了日が自動的に追加されるこのコードがあります。終了日は開始日の +3 日です。問題は 2 月 3 月 26 日から 31 日以降であるため、間違った終了日が出力されます。26-31 から常に間違った終了日を出力します。問題はうるう年だと思いますが、それを修正する方法がわかりません。私を助けてください。
これはコードです:
<input type="date" name="start_date" id="start" onKeyUp="date()">
<input type="text" name="end_date" id = "end" onKeyUp="date()" disabled />
<script type = "text/javascript">
function date() {
var startdate = document.getElementById('start');
var enddate = document.getElementById('end');
//conver you selected stuff to a proper date format
var old = new Date(Date.parse(startdate.value));
//take a new date
var newdate=new Date(Date.parse(startdate.value)+24*60*60*1000*3);
// add how many days you want to add i use 3 you can use as many
newdate.setDate(old.getDate()+3);
enddate.value = (newdate.getMonth()+1)+'-'+newdate.getDate()+'-'+newdate.getFullYear();
}
</script>