為什么我的加法運算不對?求指教!!
<!DOCTYPE html>
<html>
?<head>
? <title> 事件</title> ?
? <script type="text/javascript">
? ?function count(){
? ? ? ?var x = document.getElementById("txt1").value
? ? ? ?var y = document.getElementById("txt2").value
? ? ? ?var h= document.getElementById("select").value
? ? ? // var z = document.getElementById("fruit").value
? ? ? switch (h){
? ? ? ? ? case "+" :
? ? ? ? ? var result = x+y ;
? ? ? ? ? break;
? ? ? ? ? case "-":
? ? ? ? ? var result = x-y;
? ? ? ? ? break;
? ? ? ? ? case "*":
? ? ? ? var result = x * y;
? ? ? ? break;
? ? ? ? case "/":
? ? ? ? var result = x / y ;
? ? ? ? break;
? ? ? }
? ? ? ? ? document.getElementById("fruit").value=result;
??
? ? ? ?
? ? //獲取第一個輸入框的值
//獲取第二個輸入框的值
//獲取選擇框的值
//獲取通過下拉框來選擇的值來改變加減乘除的運算法則
? ? //設(shè)置結(jié)果輸入框的值?
? ??
? ?}
? </script>?
?</head>?
?<body>
? ?<input type='text' id='txt1' />?
? ?<select id='select'>
<option value='+'>+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
? ?</select>
? ?<input type='text' id='txt2' />?
? ?<input type='button' value=' = ' onclick="count()"/> <!--通過 = 按鈕來調(diào)用創(chuàng)建的函數(shù),得到結(jié)果-->?
? ?<input type='text' id='fruit' /> ??
?</body>
</html>
2018-07-03
數(shù)學(xué)算法你這樣寫直接是錯誤的,因為你現(xiàn)在的加法相加時兩個字符串的合并,比如“1+1”結(jié)果是11,而不是數(shù)學(xué)運算,如果想要輸入的是可用于運算的數(shù)字時,用parseInt進(jìn)行強制類型轉(zhuǎn)換,如果你輸入的數(shù)字中包含小數(shù),要用parseFloat進(jìn)行轉(zhuǎn)換,
這里正確的寫法應(yīng)該是
var result=parseInt(x)+parseInt(y);
或者:
var result=parseFloat(x)+parseFloat(y);