sample: add date to input type=date

by sii_side

HTML

<input type="date" id="date" value="2016-08-18">

<button onclick="setDateInp(1);">+</button>
<button onclick="setDateInp(-1);">-</button>

JavaScript

function setDateInp(n) {
	var date = document.querySelector("#date");
  
  //入力された日付をDateオブジェクトに変換
  var dateObj = new Date(date.value);

	//日付を1加える/1引く
  //Dateオブジェクトにするため再度new Date
	dateObj = new Date(dateObj.setDate(dateObj.getDate() + n));
  
  //年月日を取り出す
  var y = dateObj.getFullYear();
  var m = dateObj.getMonth() + 1;
  var d = dateObj.getDate();
  
  //月と日はいわゆる0埋めを行う(1桁の場合前に0を付ける)
  m = m < 10 ? "0" + m : m;
  d = d < 10 ? "0" + d : d;
  
  //yyyy-mm-dd形式でvalueに入れる
  date.value = y + "-" + m + "-" + d;
}