2016-09-18 56 views
-3

如果在輸入元素 中if語句中輸入的數量爲1,則我的下面的代碼提示300400應該將700提醒爲總數。js打印爲文本,而不是計算


function validateCart() { 
 
    var check = false; 
 
    var bill=""; 
 
    if (document.getElementById("bbc").checked) { 
 
    check = true; 
 
    var price = 300; 
 
    var quantity = document.getElementById("bbq").value; 
 
    var total = price * quantity; 
 
    bill += total; 
 
    }; 
 
    if (document.getElementById("gbc").checked) { 
 
    check = true; 
 
    var price = 400; 
 
    var quantity = document.getElementById("gbq").value; 
 
    var total = price * quantity; 
 
    bill += total; 
 
    }; 
 
    if (!check) { 
 
    alert("no item selected"); 
 
    } else { 
 
    alert(bill); 
 
    }; 
 
};


我找不出什麼錯誤,我已經做了。

+0

按所給的代碼,輸出將是'NaN' –

+0

燁如果我嘗試VAR法案=「」;我得到300700,而不是700。等待讓我更新問題 –

+0

如果你初始化'var bill =''',那麼你會描述的結果會發生,因爲你正在做字符串連接,使用'var bill = 0;'它應該可以工作。 – Barmar

回答

1

您需要初始化法案,以0:

function validateCart() { 
    var check = false; 
    var bill = 0; 
    if (document.getElementById("bbc").checked) { 
    check = true; 
    var price = 300; 
    var quantity = document.getElementById("bbq").value; 
    var total = price * quantity; 
    bill += total; 
    }; 
    if (document.getElementById("gbc").checked) { 
    check = true; 
    var price = 400; 
    var quantity = document.getElementById("gbq").value; 
    var total = price * quantity; 
    bill += total; 
    }; 
    if (!check) { 
    alert("no item selected"); 
    } else { 
    alert(bill); 
    }; 
}; 
相關問題