Подскажите по JS плиз

val06

Разрушитель (V)
Сообщения
231
Реакции
62
Баллы
591
Есть 4 текстовых поля с классом inp, в три поля вводятся данные, они должны перемножиться и результат отобразиться в четвертом.
Нашел вот такое решение
JavaScript:
var input = document.querySelectorAll('.inp');
document.addEventListener('input',function(e){
    if(e.target.classList.contains('inp') && +input[0].value > 0 && +input[1].value > 0 && +input[2].value > 0){
        input[3].value = +input[0].value * +input[1].value * +input[2].value;
    }
});
все как бы работает, но есть один момент, в поле где результат, нужно иметь возможность его ввести самому не зависимо от введенных значений в первых трех полях, а тут это не дает сделать.
То есть задача такая, ввод значений во все три поля, после чего появляется результат который можно редактировать.
Подскажите, плиз или как тут что то исправить или может есть другое решение по данной задаче.
Спасибо.
 
Есть 4 текстовых поля с классом inp, в три поля вводятся данные, они должны перемножиться и результат отобразиться в четвертом.
Нашел вот такое решение
JavaScript:
var input = document.querySelectorAll('.inp');
document.addEventListener('input',function(e){
    if(e.target.classList.contains('inp') && +input[0].value > 0 && +input[1].value > 0 && +input[2].value > 0){
        input[3].value = +input[0].value * +input[1].value * +input[2].value;
    }
});
все как бы работает, но есть один момент, в поле где результат, нужно иметь возможность его ввести самому не зависимо от введенных значений в первых трех полях, а тут это не дает сделать.
То есть задача такая, ввод значений во все три поля, после чего появляется результат который можно редактировать.
Подскажите, плиз или как тут что то исправить или может есть другое решение по данной задаче.
Спасибо.
попробуй так
JavaScript:
var input = document.querySelectorAll('.inp');

document.addEventListener('input', function(e) {
    if (
        e.target.classList.contains('inp') &&
        e.target !== input[3] &&
        +input[0].value > 0 &&
        +input[1].value > 0 &&
        +input[2].value > 0
    ) {
        input[3].value = +input[0].value * +input[1].value * +input[2].value;
    }
});
 
попробуй так
JavaScript:
var input = document.querySelectorAll('.inp');

document.addEventListener('input', function(e) {
    if (
        e.target.classList.contains('inp') &&
        e.target !== input[3] &&
        +input[0].value > 0 &&
        +input[1].value > 0 &&
        +input[2].value > 0
    ) {
        input[3].value = +input[0].value * +input[1].value * +input[2].value;
    }
});
спасибо, работает.
 
Назад
Верх