最终样式:
代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<input id="num1">
<select id="opt">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
<option value="%">%</option>
</select>
<input id="num2">
<button id="calc">计算</button>
<input id="result">
</body>
<script>
//获取计算所代表的元素,当其发生点击事件时
var butInput=document.getElementById("calc");
butInput.onclick=function(){
//获取该所输入的数所代表的元素,及其本身的值
var num1Input=document.getElementById("num1");
var number1=num1Input.value;
var num2Input=document.getElementById("num2");
var number2=num2Input.value;
var optInput=document.getElementById("opt");
var option=optInput.value;
var resInput=document.getElementById("result");
switch(option){
//从页面中获取的值都是字符串类型,所以在+号计算时需要进行强制转换,而其它几个其实不必进行强制转换,因为其本身自带隐式转换
case "+":
resInput.value=Number(number1)+Number(number2);
case "-":
resInput.value=Number(number1)-Number(number2);
break;
case "*":
resInput.value=Number(number1)*Number(number2);
break;
case "/":
if(number2==0){
resInput.value="被除数不能为0"
}else{
resInput.value=(Number(number1)/Number(number2)).toFixed(2);}
break;
case "%":
if(number2==0){
resInput.value="被除数不能为0"
}else{
resInput.value=(Number(number1)%Number(number2)).toFixed(2);}
break;
}
}
</script>
</html>