Bondich228
@Bondich228
Мамкин программист))

Как умножить значение нескольких input?

Помогите друзья!)
Нужно первый input (id="multiply") перемножить на input (class="result"), т.е. чтобы значения менялись прям внутри input
<form>
<input id="multiply" type="text" name="number" value="10">

<input class="result" type="text" name="number" value="3"> //тут должно получиться value="30"
<input class="result" type="text" name="number" value="4"> //тут должно получиться value="40"
<input class="result" type="text" name="number" value="1"> //тут должно получиться value="10"
<input class="result" type="text" name="number" value="2"> //тут должно получиться value="20"
</form>

Или в таком виде))
<form>
<input id="multiply" type="text" name="number" value="10">

<div class="result">3</div>
<div class="result">4</div>
<div class="result">6</div>
<div class="result">7</div>
</form>

Дополняю:
Нашел единственный пример кода:
<form action="" method="post">
<input type="text" id="test">
</form>
 
<div class="result">3</div>
<div class="result">4</div>
<div class="result">6</div>
<div class="result">7</div>

var input = document.getElementById('test');
var result = document.getElementById('result');

input.onkeyup =  input.oncopy = input.onpaste = input.oncut = (function() {
    return function() {
         result.innerHTML = this.value;
    }
})();
  • Вопрос задан
  • 129 просмотров
Решения вопроса 1
@Andrew575
Для случая с input
const multiplyInput = document.querySelector('#multiply');
const resultInputs = document.querySelectorAll('.result');

resultInputs.forEach( item => {
	item.value = item.value * multiplyInput.value;
});


Для случая с div
const multiplyInput = document.querySelector('#multiply');
const resultElements = document.querySelectorAll('.result');

resultElements.forEach( item => {
	item.innerText = parseInt(item.innerText) * multiplyInput.value;
});

Но тут вы не можете гарантировать, что внутри div изначально находится число, а в input можете
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Artezio Нижний Новгород
от 130 000 до 180 000 ₽
Artezio Москва
от 160 000 до 220 000 ₽
Artezio Санкт-Петербург
от 160 000 до 220 000 ₽