Mam ten aktualny kod czasowy na wejściu:

<!DOCTYPE html>
<html>
<body onload="sum()">
  Current Time: <input type='time' value='now' readonly disabled>
  <script src='scripts/jquery.min.js'></script>
  <script id="rendered-js">
  $(function () {
    var d = new Date(),
    h = d.getHours(),
    m = d.getMinutes();
    if (h < 10) h = '0' + h;
    if (m < 10) m = '0' + m;
    $('input[type="time"][value="now"]').each(function () {
      $(this).attr({ 'value': h + ':' + m });
    });
  });
  </script>  
</body>
</html>

Jak mogę dodać minuty z innego pola wejściowego? Przykład: 14:00 + 00:30 minut = 14:30

Musi być w polu wejściowym

0
Cornelius_X 15 grudzień 2019, 22:06

1 odpowiedź

Można to osiągnąć za pomocą właściwości setMinutes.

Przeczytaj więcej tutaj: https://developer. mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Data/setMinuty

Ale musisz zachować odniesienie do pierwotnej daty, przeliczyć, a następnie zaktualizować DOM. Coś takiego:

$(function () {
  var d = new Date(),
  h = d.getHours(),
  m = d.getMinutes();
  if (h < 10) h = '0' + h;
  if (m < 10) m = '0' + m;
  $('input[type="time"][value="now"]').each(function () {
    $(this).attr({ 'value': h + ':' + m });
    // attach this event to the input controlling the minutes: 
    $(this).addEventListener('change', e => {
      // set the minutes
      d.setMinutes(e.target.value)
      // update the minutes variable
      m = d.getMinutes()
      // update the HTML attribute to reflect the new value
      $(this).attr({ 'value': h + ':' + m });
    })
  });
});

Daj mi znać, jeśli to pomoże.

0
Jacob Penney 15 grudzień 2019, 22:19
Przepraszam, ale nie jestem aż tak zaawansowany, nie wiem, co dokładnie masz na myśli. Znalazłem ten kod online, aby wyświetlić czas w danych wejściowych, i chcę innego wejścia, w którym użytkownik może umieścić czas, i trzeciego wejścia dla odpowiedzi.
 – 
Cornelius_X
16 grudzień 2019, 01:02