Я новичок в изучении манипуляций с DOM в JS, и я сталкивался в основном с передачей одного аргумента функции обработчика событий, например getSum(this)
. Допустим, у нас есть простая функция добавления в теге script, я включил эти элементы ввода в форму, вот так, что все в порядке:
<html>
<body>
<form id="operands" oninput="getSum(this)">
<input id="op1" type="number" name="op1" placeholder="op1">
<input id="op2" type="number" name="op2" placeholder="op2">
</form>
<p id="output"></p>
<script>
function getSum(form_input){
form_input = document.getElementById("operands").elements;
document.getElementById("output").innerHTML =
Number(form_input.namedItem("op1").value) +
Number(form_input.namedItem("op2").value);
}
</script>
</body>
</html>
Я пытаюсь переписать, чтобы я мог устранитьиспользование элемента формы, поскольку в нем есть только 2 дочерних элемента (входных тега) и передаются значения обоих элементов во второй, например getSum([], this)
, например:
<html>
<body>
<input type="number" id="op1" name="op1" placeholder="op1">
<input type="number" id="op2" name="op2" placeholder="op2" oninput="getSum(*[op1's value]*, this)">
<p id="output"></p>
<script>
function getSum(a, b){
document.getElementById("output").innerHTML = (Number(a.value) + Number(b.value));
}
</script>
</body>
</html>
Как передать первый входзначение элемента для функции getSum(a, b)
в качестве аргумента a?