I would like to set the value of a datetime-local input with the current date and time. Right now I have an ugly solution that involves slicing the first 17 characters. In addition it sets the time in GMT instead of the local time. My code is as follows:
<input type="datetime-local" name="name" id="1234"> <script type="text/javascript"> var d = new Date(); var elem = document.getElementById("1234"); elem.value = d.toISOString().slice(0,16); </script> I have two problems with this code:
- Is there a way to convert from a
Dateto a legal value without manually slicing the string? - I would like the string to be displayed in the datetime-local as
DD/MM/YYYY, hh:mm(e.g.05/11/2015, 14:10it is13:10in GMT but I am in GMT+1 so I want to display14:10). What is currently displayed is05/11/2015, 01:10 PM. I would like to remove the PM and display in local time.
This might be an XY problem, so if I am doing it completely wrong and there is a better way to display datetime pickers in html, I would be happy to hear.