Я пытался использовать входные данные из моего HTML для создания объекта даты, но не важно, что я настраиваю, он либо показывает неверную дату, либо дает сегодняшнюю дату. Любая помощь о том, как я могу решить это? Или исправления о том, что я могу делать не так? Благодарю. Вот мой код ниже.

    <input type="date" id="date">
    <script>
    var date = document.getElementById("date").value();
    var d = new Date(d);
    </script>
1
Mwangi Murimi 25 Окт 2019 в 15:15

3 ответа

Лучший ответ

Может быть полезно для вас:

        function x(){
        var date = document.getElementById("date").value;
        var d = new Date(date);
        console.log(d);
        }
        
        
<input type="date" id="date">
<button onclick="x()">show</button>
1
FrustratedDeveloper 25 Окт 2019 в 12:31

Вы неправильно указали .value () и измените на .value.

Вы можете использовать момент js для форматирования даты ГГГГ-ММ-ДД

function check(){
var date = document.getElementById("date").value;
    var d = new moment(date, 'YYYY-MM-DD');
    console.log(d)
}
function check(){
var date = document.getElementById("date").value;
    var d = new moment(date, 'YYYY-MM-DD');
    console.log(d)
}
    <input type="date" id="date" onblur="check()">
    <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js" integrity="sha256-4iQZ6BVL4qNKlQ27TExEhBN1HFPvAvAMbFavKKosSWQ=" crossorigin="anonymous"></script>
3
Hien Nguyen 25 Окт 2019 в 12:26

Вы можете попробовать следующее:

<!DOCTYPE html>
<html>
<head>
<title>Date experiment</title>

<script>
function processDate(mdate){
    console.log(mdate); 
    }
</script>
</head>
<body>
<p>This is a paragraph.</p>
<form>
  Date : <br>
  <input type="date" id="start" name="mydate" onchange="processDate(this.value)"
       value="2019-10-20" min="2019-10-01" max="2019-12-31">
</form>
</body>
</html>
0
Adrian Mole 25 Окт 2019 в 13:12
58558369