Make date max = today

by kenwals

HTML

<form>
  <label>
    Choose your preferred party date (required, April 1st to 20th):
    <input id="inputdate" type="date" name="party" min="2017-04-01" max="2017-04-20" required>
    <span class="validity"></span>
  </label>

  <p>
    <button>Submit</button>
  </p>
</form>
JavaScript + No-Library (pure JS)https://jsfiddle.net/#

JavaScript

function formatDate(date) {
  var d = new Date(date),
    month = '' + (d.getMonth() + 1),
    day = '' + d.getDate(),
    year = d.getFullYear();

  if (month.length < 2) month = '0' + month;
  if (day.length < 2) day = '0' + day;

  return [year, month, day].join('-');
}

let today = new Date();

document.getElementById("inputdate").max = formatDate(today);

//https://stackoverflow.com/questions/23593052/format-javascript-date-as-yyyy-mm-dd