2014-01-17 33 views
0

我有3個函數,其中兩個函數根據表單中的選擇生成總數,另一個格式化輸出。他們目前獨立顯示爲獨立運行總數,但我需要將它們作爲一個總和加在一起。我想我需要將它們作爲變量返回,然後創建一個新的函數將它們添加到一起,是嗎?從兩個javascript函數中獲取總計以便將它們相加

function addem(oSelect) 
{ 
    var total = 0, oForm = oSelect.form; 
    var i = 0, sel, sels = oForm.getElementsByTagName('select'); 
    while (sel = sels[i++]) 
     if (sel.className == 'items') 
      total += parseFloat(prices[sel.options[sel.selectedIndex].value] || 0, 10); 
    document.getElementById('output').value = format(total); 
} 

function format(sAmount) 
{ 
    sAmount = Math.round(sAmount * 100)/100; 
    return '£' + ((sAmount != parseInt(sAmount)) ? sAmount : sAmount + '.00'); 
} 

function checkTotal() { 
    document.quote.total2.value = ''; 
    var sum = 0; 
    for (i=0;i<document.quote.SMM.length;i++) { 
     if (document.quote.SMM[i].checked) { 
     sum = sum + parseInt(document.quote.SMM[i].value); 
     } 
    } 
    document.quote.total2.value = format(sum); 
} 
+0

正確,那就是我會做的。讓所有的方法返回他們自己的總數,然後有一個方法來完成所有三個的總和。 – Jason

回答

0

你可以在另一個裏面使用其中的一個,所以主要的會顯示最終結果,就像使用checkTotal裏面的格式一樣。

+0

是否會使用checkTotal中的代碼向'addem'函數添加'else',因爲它需要動態更新總數。 –

相關問題