2015-06-26 5 views
0

Как я могу добавить два числа из текстового поля при загрузке страницы? он работает только тогда, когда я пытаюсь создать кнопку для добавления.Добавьте два числа, используя Javascript в onload event

function sum() { 
 
    var txtFirstNumberValue = document.getElementById('totalprice').value; 
 
    var txtSecondNumberValue = document.getElementById('price1').value; 
 
    var result = parseInt(txtFirstNumberValue) * parseInt(txtSecondNumberValue); 
 
    if (!isNaN(result)) { 
 
    document.getElementById('totalprices').value = result; 
 
    } 
 
}

+0

Если вы запускаете это при загрузке страницы, как пользователь вводит числа во входы? – Barmar

ответ

1

использование window.onload

<script> 
    function sum() { 
      var txtFirstNumberValue = document.getElementById('totalprice').value; 
      var txtSecondNumberValue = document.getElementById('price1').value; 
      var result = parseInt(txtFirstNumberValue) * parseInt(txtSecondNumberValue); 
      if (!isNaN(result)) { 
       document.getElementById('totalprices').value = result; 
      } 
     } 
    window.onload=sum; 
</script> 
+0

OMG! Большое спасибо, это сработало! :)) –

1

Вы либо должны вызвать функцию, когда документ закончил загрузку с window.onload слушателя https://developer.mozilla.org/en/docs/Web/API/GlobalEventHandlers/onload

т.е.

function sum(){ 
    var txtFirstNumberValue = document.getElementById('totalprice').value; 
      var txtSecondNumberValue = document.getElementById('price1').value; 
      var result = parseInt(txtFirstNumberValue) * parseInt(txtSecondNumberValue); 
      if (!isNaN(result)) { 
       document.getElementById('totalprices').value = result; 
      } 
     } 
window.onload = sum; 

В качестве альтернативы, вы можете запустить код после HTML в документе, и без его в функцию, а затем он будет интерпретировать сразу

например

<html> 

<div>some stuff here</div> 
... // bottom of document 
<script> 
var txtFirstNumberValue = document.getElementById('totalprice').value; 
       var txtSecondNumberValue = document.getElementById('price1').value; 
       var result = parseInt(txtFirstNumberValue) * parseInt(txtSecondNumberValue); 
       if (!isNaN(result)) { 
        document.getElementById('totalprices').value = result; 
       } 
</script> 
</html> 
+0

Большое спасибо! :)) –

1

Если вы предпочитаете Jquery по сравнению с обычными Javascript:

$(document).ready(function() { 
    var txtFirstNumberValue = $('#totalprice').val(); 
    var txtSecondNumberValue = $('#price1').val(); 
    var result = (parseInt(txtFirstNumberValue) * parseInt(txtSecondNumberValue)); 
    if (!isNaN(result)) { 
     $('#totalprices').val(result); 
    } 
}); 

Это также огонь раньше, чем window.onload, в результате лучшего пользовательского опыта.

+0

Большое спасибо! :) –

+0

@KimOcampoOctaviano Добро пожаловать. Не стесняйтесь принимать ответ, если он вам полезен. – RuubW

Смежные вопросы