Member 13402731 Ответов: 1

Как изменить вывод автоматически при вводе нового значения во вход ?


Привет. У меня есть этот код, и он работает частично. Например, когда входное значение равно 1, выход должен показывать "DO", когда оно равно 10, он должен показывать "DO not". Когда я изменяю значение входного сигнала, мой выход не меняется. Только после снятия одного из флажков он показывает правильную строку. Как я могу сделать так, чтобы изменить вывод автоматически. Спасибо, любая помощь будет оценена по достоинству.

Что я уже пробовал:

<body>
  Age: <input type="number" id="input" class="no-spinners" autocomplete="off">
  <div id="inside">

    <input type="checkbox" id="a" autocomplete="off">
    <input type="checkbox" id="b" autocomplete="off">
    <input type="checkbox" id="c"  autocomplete="off">
    <input type="checkbox" id="d" autocomplete="off">
    <input type="checkbox" id="e" autocomplete="off">
  </div>
  <span id="output"></span>

  </div>

</body>

var a = document.getElementById('a');
var b = document.getElementById('b');
var c = document.getElementById('c');
var d = document.getElementById('d');
var e = document.getElementById('e');
function checkValue() {
  var number = parseFloat(document.getElementById('input').value);

  if (a.checked && number < 2) { document.getElementById('output').innerHTML = 'DO';
}
else if (a.checked && b.checked &&  number >= 2 && number <= 6) {
  document.getElementById('output').innerHTML = 'DO';
}
else if (a.checked && b.checked && c.checked &&  number >= 6 && number <= 12) {
  document.getElementById('output').innerHTML = 'DO';
}
else if ((b.checked && c.checked && number >= 13) && (d.checked || e.checked)) {
  document.getElementById('output').innerHTML = 'DO';
} else {
  document.getElementById('output').innerHTML = 'DO not';
}
 }

document.getElementById('inside').addEventListener('change', checkValue);

1 Ответов

Рейтинг:
10

User 13204940

Это вызовет checkValue () всякий раз, когда будет нажата клавиша

<input type="number" id="input" class="no-spinners" autocomplete="off" onkeyup="checkValue()">