Библиотека моментов обратного отсчета, дающая мне странное назначение переменных? - PullRequest
0 голосов
/ 30 апреля 2018

Библиотека, которую я использую: https://github.com/icambron/moment-countdown

Мой код:

<!DOCTYPE html>
<html>

<head>
  <title>Test</title>
  <!-- https://github.com/icambron/moment-countdown -->
  <script src="moment.min.js"></script>
  <script src="countdown.min.js"></script>
  <script src="moment-countdown.min.js"></script>
</head>

<body>
  <input type="datetime-local" id="timeInputHTML" onchange="mainfunc()>
  <p id="pel"></p>
  <script>
    function mainfunc() {
      timeVar = document.getElementById("timeInputHTML").value;
      // var timeInputVar = moment("2045-01-01 00:00:00").countdown().toString(); 
      var timeInputVar = moment(timeVar).countdown().toString();
      document.getElementById("pel").innerHTML = timeInputVar;
    }

    // Run above function every 1 second
    setInterval(mainfunc, 1000);
  </script>
</body>

</html>

Вопрос: как сделать переменную timeVar, когда она получает значения из timeInputHTML в HTML-коде, не содержать в середине T, например: "2018-05-05T14:30" Я считаю, что это неправильно с моим кодом и вызывает Uncaught TypeError, если это не проблема, то, пожалуйста, не могли бы вы объяснить мне, что пожалуйста?

Изображение / скриншот:

Screenshot

1 Ответ

0 голосов
/ 30 апреля 2018
<!DOCTYPE html>
<html>

<head>
  <title>Test</title>
  <!-- https://github.com/icambron/moment-countdown -->
  <script src="moment.min.js"></script>
  <script src="countdown.min.js"></script>
  <script src="moment-countdown.min.js"></script>
</head>

<body>
  <input type="datetime-local" id="timeInputHTML" onchange="mainfunc()">
  <p id="pel"></p>
  <script>
    function mainfunc() {
      timeVar = document.getElementById("timeInputHTML").value;
      // var timeInputVar = moment("2045-01-01 00:00:00").countdown().toString(); 
      var timeInputVar = moment(timeVar).countdown().toString();
      document.getElementById("pel").innerHTML = timeInputVar;
    }

    // Run above function every 1 second
    setInterval(mainfunc, 1000);
  </script>
</body>

</html>

Вы отсутствуют " это во входной функции должно быть так

<input type="datetime-local" id="timeInputHTML" onchange="mainfunc()">
...