寫了兩種方式,發現在做+運算的時候,需要加Number(),不然出的結果不是和,而是字符串相連
<!DOCTYPE?html>
<html>
?<head>
??<title>?事件</title>??
??<script?type="text/javascript">
???function?count(){
???????var?num1=document.getElementById("txt1").value,
????//獲取第一個輸入框的值
????
????num2=document.getElementById("txt2").value,
//獲取第二個輸入框的值
select=document.getElementById("select").value,
fruit
//獲取選擇框的值
if(select=="+"){
????fruit=Number(num1)+Number(num2)
}
else?if(select=="-"){
????fruit=num1-num2
}
else?if(select=="*"){
????fruit=num1*num2
}
else{
????fruit=num1/num2
}
//獲取通過下拉框來選擇的值來改變加減乘除的運算法則
????document.getElementById("fruit").value=fruit
????//設置結果輸入框的值?
???}
??</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()"/>?
???<!--通過?=?按鈕來調用創建的函數,得到結果-->?
???<input?type='text'?id='fruit'?/>???
?</body>
</html>把if換成switch:
switch?(select)?{
case?"+":?fruit?=?Number(num1)?+?Number(num2);
break;
case?"-":?fruit?=?num1?-?num2;
break;
case?"*":?fruit?=?num1?*?num2;
break;
case?"/":?fruit?=?num1?/?num2;
break;
}
2022-06-16
練習中提示:
注意:?使用parseInt()函數可解析一個字符串,并返回一個整數。
所以:
var?num1=document.getElementById("txt1").value,
可以修改為:
var num1 = parseInt(document.getElementById("txt1").value);
還有一個小細節:JS 如果要以符號結尾的話要是用“;”
2022-05-11