2013-10-04 23 views
0

希望這是我的最後一個問題,但這裏有。在onchange輸入中調用2個函數

我有一個HTML腳本:

<input type="text" name="copy1" id="copy1" size="4" maxlength="10" onchange="calc1(this.value)"> 
<input type="text" name="copycosts" id="copycosts" size="4" VALUE=""> 
<input name="copy2" type="text" id="copy2" size="4" maxlength="10" onchange="calc2(this.value)"> 

等....我想所有這些加在一起,使他們在總票房總結。我對每一個都有不同的功能,這樣他們都能夠獲得成本,而且效果很好。我無法拿到這筆錢。 我試過javascripting它:

function sum(){ 
var cc = document.getElementById("copycosts").value; 
var cc2 = document.getElementById("copycosts2").value; 
var cc3 = document.getElementById("copycosts3").value; 
var sc = document.getElementById("searchcosts").value; 
var cc4 = document.getElementById("certcosts").value; 
var nc = document.getElementById("naracosts").value; 
var ac = document.getElementById("apostcosts").value; 

var sum = parseFloat(cc + cc2 + cc3 + sc + cc4 + nc + ac); 
document.getElementById("sum").value = sum; 
} 

我做錯了什麼?

再次感謝

+1

您是如何得到這樣的東西的? '342093845249572483'? – ncm

+0

不,我沒有得到任何總和 – karisma

+0

任何總和? imsiso意味着你可能想要在添加之前先解析它們,因爲這些值是字符串 –

回答

0

HTML:

<input type="text" class="numInput" id="copy1" maxlength="10" /> 
<input type="text" class="numInput" id="copy2" maxlength="10" /> 
<input type="text" class="numInput" id="search" maxlength="10" /> 
<input type="text" class="numInput" id="nara" maxlength="10" /> 
Sum: 
<input type="text" class="numOutput" id="sum" readonly="true" /> 

的JavaScript:

var load = function() { 
    'use strict'; 

    var inElems = document.getElementsByClassName('numInput'), 
     sum = document.getElementById('sum'), 
     i; 

    var add = function() { 
     var i, result = 0; 

     for (i = 0; i < inElems.length; i++) { 
      result += +(inElems.item(i).value); 
     } 

     sum.value = result; 
    }; 

    for (i = 0; i < inElems.length; i++) { 
     inElems.item(i).addEventListener('input', add, false); 
    } 
} 

(function() { 
    document.addEventListener('load', load, false); 
})(); 

CSS:

.numInput { 
    width: 60px; 
} 

.numOutput { 
    width: 90px; 
    readonly: true; 
} 

jsfiddle

注意:本示例使用可能與舊版瀏覽器不兼容的現代JavaScript技術