簡體   English   中英

如何為帶有數字值的復選框制作JS If Then語句?

[英]How to make a JS If Then statement for a checkbox with numeric value?

我正在嘗試為我的網站創建一個基本的定價計算器,以便客戶可以獲得成本的基本估算。 對於定價的一部分,我嘗試制作復選框,如果選中了這些復選框,則會在總計中添加例如100。 但是,如果未選中,則不添加任何內容。 我一直在嘗試使用下面的代碼,但是我絕對做不正確。 預先感謝您的幫助。 我是JS和HTML領域的新手,感謝您的幫助!

我在下面包含了我當前的JavaScript。 我希望將1號和2號作為文本框,將3號作為一個復選框。

var button = document.getElementById("submitButton");
button.addEventListener("click", function() {

var num1 = document.getElementById('Number1').value;

var num2 = document.getElementById('Number2').value;

var num3 = if (document.getElementById('Number3').value == 1) 
{ 
document.getElementById('Number3').value = '100'; 
} 
else if (document.getElementById('Number3').value == 0) 
{ 
value = '0'; 
} ;

var answer = parseInt(num1) + parseInt(num2) + parseInt(num3);

document.getElementById('Answer').innerHTML = answer;



}, true);

您的JS中有多個錯誤。 第一個來自:

var num3 = if (document.getElementById('Number3').value == 1) 
{ 
    document.getElementById('Number3').value = '100'; 
} 
else if (document.getElementById('Number3').value == 0) 
{ 
    value = '0'; 
} ;

這是語法錯誤。 您可以改用三元運算符:

var num3 = document.getElementById('Number3').checked ? 100 : 0;
// condition ? value to return if true : value to return if false

您還需要檢查輸入的值是否undefined並為它們分配一個默認值:

var num1 = document.getElementById('Number1').value || 0;
var num2 = document.getElementById('Number2').value || 0;

請參閱工作示例:

 var button = document.getElementById("submitButton"); button.addEventListener("click", function() { var num1 = document.getElementById('Number1').value || 0; var num2 = document.getElementById('Number2').value || 0; var num3 = document.getElementById('Number3').checked ? 100 : 0; var answer = parseInt(num1) + parseInt(num2) + num3; document.getElementById('Answer').innerHTML = answer; }, true); 
 <input id="Number1"/> <input id="Number2"/> <input id="Number3" type="checkbox"/> <button id="submitButton">Go</button> <div id="Answer"></div> 

代替:

var num3 = if (document.getElementById('Number3').value == 1) 

采用:

if(document.getElementById("Number3").checked){
//add the values here 
}

希望這可以幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM