老师我的代码无法实现

老师我的代码无法实现

相关代码:

<!DOCTYPE html>
<html>

<head lang="en">
<meta charset="UTF-8">
<title>计算器</title>
<script>
window.onload = function () {
// 获取num1
var num1 = Number(document.getElementById('num1').innerText);
// 获取num2
var num2 = Number(document.getElementById('num2').innerText);
// 获取结果
var result = Number(document.getElementById('result').innerText);
// 获取符号
var operate = document.getElementById('operate').value;
var btn = document.getElementById('btn');

// alert("弹出结果")
btn.onclick = function () {
// 按钮符号选择
if (operate == '+') {
result = num1 + num2;
} else if (operate == '-') {
result = num1 - num2;
} else if (operate == '*') {
result = num1 * num2;
} else if (operate == '/') {
result = num1 / num2;
}
return result;
}
}
</script>
</head>

<body>
<input type='text' id='num1' />
<select id='operate'>
<option value='+'>+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select>
<input type='text' id='num2' />
<input type='button' value=' = ' id="btn" />
<input type='text' id='result' />


</body>

</html>

问题描述:

  1. 代码不报错,无法排查哪里错了

  2. 我感觉自己的逻辑也没什么问题就是出不了答案

  3. 求助老师,帮忙看下代码,谢谢老师​

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,问题解答如下:

代码没有报错是因为代码没有语法错误;

代码逻辑删还是有一点问题的,具体问题如下:

从下图可以看出num1,num2,operate在页面打开时(没有点击等号按钮的时候)就获取到值 了(初始值):

http://img1.sycdn.imooc.com//climg/6046ffdc09b5d24c14730430.jpg

由于代码是从上往下执行的,当输入数字并点击等号的时候,不会再次执行上图红框中的三句代码,所以num1,num2,operate的值不会更新(还是最初的初始值),因此最新输入的值无法获取到。另外,代码中没有把运算结果输出到页面上,所以页面上不会显示出结果

正确思路为:要在点击按钮的时候再获取输入的内容,然后进行计算,最后把结果输出到页面上,具体代码如下:

http://img1.sycdn.imooc.com//climg/6046fff5099584bd07210403.jpg

http://img1.sycdn.imooc.com//climg/60470002093cfadd06270715.jpg

祝学习愉快!



  • http://img1.sycdn.imooc.com//climg/60474af2091cb47805820817.jpg

    http://img1.sycdn.imooc.com//climg/60474b5c093e43fe19120615.jpg


    2021-03-09 18:18:06
  • 贴代码字符串超出了,所以只能截图了,麻烦老师帮我瞅瞅?

    2021-03-09 18:19:14
  • 同学你好,关于同学的问题解答如下,建议参考如下调整:

    http://img1.sycdn.imooc.com//climg/604761c609aa463509410880.jpg

    另外,建议同学下次粘贴代码,不要截图哟,代码显示超出了,可以将代码拆分成几段,依次上传,每次上传一部分即可,这个是输入框有字数限制,不是这个问答有字数显示哦。

    祝学习愉快!

    2021-03-09 19:55:27
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师