Home > database >  Change Date format in datepicker
Change Date format in datepicker

Time:03-09

I have a question about changing the date format to dd/mm/yyyy. I want the default date to be 09-01-2022. But below the code doesn't work to change dd/mm/yyyy.

var today = "Wed Jan 09 2022 13:01:18 GMT 0800 (Malaysia Time)";
var dd = String(today.getDate()).padStart(2, '0');
var mm = String(today.getMonth()   1).padStart(2, '0'); //January is 0!
var yyyy = today.getFullYear();
today = mm   '/'   dd   '/'   yyyy;
<div >
<label>Date&nbsp;:</label>
<input type="date"  id="date_of_daily" name="date_of_daily" value="2022-01-09" title="Date of daily" min="2022-01-09" max="2022-01-11">
</div>

Actually I want the result like below picture:

output

Hope someone can guide me on how to solve this problem. Thanks.

CodePudding user response:

You can try it with :

var today = "Wed Jan 09 2022 13:01:18 GMT 0800 (Malaysia Time)";

function convertDate(inputFormat) {
  function pad(s) { return (s < 10) ? '0'   s : s; }
  var d = new Date(inputFormat)
  return [pad(d.getDate()), pad(d.getMonth() 1), d.getFullYear()].join('/')
}

console.log(convertDate(today))

$(function() {
  $("#date_of_daily").datepicker({
    dateFormat: "dd/mm/yy",
    minDate: 0,
    maxDate: " 2D  0M",
    showAnim: "slideDown"
  });
});
<link rel="stylesheet" href="https://code.jquery.com/ui/1.13.1/themes/base/jquery-ui.css">
<link rel="stylesheet" href="https://jqueryui.com/resources/demos/style.css">
<script src="https://code.jquery.com/jquery-3.6.0.js"></script>
<script src="https://code.jquery.com/ui/1.13.1/jquery-ui.js"></script>
<div >
  <label>Date&nbsp;:</label>
  <input type="text"  id="date_of_daily" name="date_of_daily" size="30" value="09/01/2022" title="Date of daily" min="2022-01-09" max="2022-01-11">
</div>

CodePudding user response:

I hope the below answers your question...You need to basically parse the string today to convert it to a date before calling functions of Date on it like getDay etc...

var today = "Wed Jan 09 2022 13:01:18 GMT 0800 (Malaysia Time)";
var dd = String(Date.parse(today)).padStart(2, '0');
var mm = String(new Date(Date.parse(today)).getMonth()   1).padStart(2, '0'); //January is 0!
var yyyy = new Date(Date.parse(today)).getFullYear();
today = mm   '/'   dd   '/'   yyyy;
<div >
<label>Date&nbsp;:</label>
<input type="date"  id="date_of_daily" name="date_of_daily" value="2022-01-09" title="Date of daily" min="2022-01-09" max="2022-01-11">
</div>

  • Related