Показать сообщение отдельно
  #1 (permalink)  
Старый 12.02.2020, 13:12
Аспирант
Отправить личное сообщение для tp-20 Посмотреть профиль Найти все сообщения от tp-20
 
Регистрация: 19.06.2018
Сообщений: 44

Не выполняется арифметическое действие (сложение)
Всем привет.

Есть простая форма с инпутом. В инпут вводим любое число, а в диве к этому числу должно прибавляться 20 и выводиться сумма, но цифры не складываются, а конкотенируются.
Пример: 3+20 получается 320, а ожидалось 23;
100+20 получается 10020, ожидалось 120.
Как решить вопрос?

<form method="post" name="calcul" onsubmit="calculate(); return false;">
    <input name="summa" id="calc_summa" value="" type="number" max="1000" onchange="calculate();"/>
    <input name="calculate_btn" value="Рассчитать" type="submit">
</form>
                        
<div id="default" style="outline:1px solid red; height: 30px;"></div>
<div id="itog" style="outline:1px solid blue; height: 30px;"></div>

function calculate(){
        var def_input=document.getElementById("calc_summa").value;
        def_input = def_input+20; // здесь не происходит сложение
        document.getElementById('default').innerHTML=def_input;  
        document.getElementById('itog').innerHTML=(def_input+20); 
    }

    calculate();
Ответить с цитированием