为了账号安全,请及时绑定邮箱和手机立即绑定

不懂为什么中文会显示乱码... 还有为什么最后结果显示undifiened啊


<!DOCTYPE HTML>

<html>

    <head>

    <title> 计算器 </title>

    <script type="text/javascript">

var a=document.getElementById("num1").value;    

var b=document.getElementById("num2").value; 

var c=document.getElementById("fuhao").value; 

var d="";

function result(){

switch(c){

case "+":

d=parseInt(a)+parseInt(b);

break;


case "-":

d=parseInt(a)-parseInt(b);

break;


case "*":

d=parseInt(a)*parseInt(b);

break;


case "/":

d=parseInt(a)/parseInt(b);

break;

}

document.getElementById("sum").value=d;

}  

 </script>

    </head>


    <body>


    

    <p>计算器</p>><br/>

     <input type="text" id="num1" />

   <select id="fuhao" value="+">

    <option value="+">+</option>

    <option value="-">-</option>

    <option value="*">*</option>

    <option value="/">/</option> 

   </select>

     <input type="text" id="num2" />

     =

     <input type="text" id="sum" /><br/>

     <input type="button" value="计算"  onclick="result()" /><br/>


    </body>


</html>


正在回答

3 回答

大兄弟,主要是你把getElementById获取的值放到函数体外面,这样它得不到值就会显示undifiened 这是未定义 不是乱码


0 回复 有任何疑惑可以回复我~
#1

小学渣丶 提问者

谢谢大兄弟了啊,确实是你说的那样,我定义的好像是全局变量,应该放在函数内部定义成局部变量
2017-01-07 回复 有任何疑惑可以回复我~

<!DOCTYPE html>

<html>

 <head>

  <title> 事件</title>  

    <script type="text/javascript">


function result(){

    var a=document.getElementById("num1").value;    

var b=document.getElementById("num2").value; 

var c=document.getElementById("fuhao").value; 

var d="";

switch(c){

case "+":

d=parseInt(a)+parseInt(b);

break;


case "-":

d=parseInt(a)-parseInt(b);

break;


case "*":

d=parseInt(a)*parseInt(b);

break;


case "/":

d=parseInt(a)/parseInt(b);

break;

}

document.getElementById("sum").value=d;

}  

 </script>

    </head>


    <body>


    

    <p>计算器</p>><br/>

     <input type="text" id="num1" />

   <select id="fuhao" value="+">

       <option value="+">+</option>

    <option value="-">-</option>

    <option value="*">*</option>

    <option value="/">/</option> 

   </select>

     <input type="text" id="num2" />

     =

     <input type="text" id="sum" /><br/>

     <input type="button" value="计算"  onclick="result()" /><br/>


    </body>

</html>


0 回复 有任何疑惑可以回复我~

中文显示乱码:

<!DOCTYPE HTML>
<html>
<meta charset="utf-8">//加上这行
    <head>
    <title> 计算器 </title>

0 回复 有任何疑惑可以回复我~
#1

小学渣丶 提问者

为什么我把慕课网上别人的代码拷贝下来运行,没有加那一行,可以显示出来,我的就显示不出来啊
2017-01-07 回复 有任何疑惑可以回复我~
#2

小学渣丶 提问者

不过加了你这个确实就能正确显示中文了
2017-01-07 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468044    人
  • 解答问题       21891    个

本课程从如何插入JS代码开始,带您进入网页动态交互世界

进入课程

不懂为什么中文会显示乱码... 还有为什么最后结果显示undifiened啊

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信