萌新项目人 2016-04-24 08:18 采纳率: 100%
浏览 1602
已采纳

这是一个除法代码,我想实现自动运算,而不是输入信息后才运算,如何修改?

是输入信息后点击input外边的范围才会运算,但是目前已经有信息,如何省却上述步骤直接运算?

 <html> 
<head> 
<script>
function compute()
{
  var a,b;
  if(document.getElementById("txt1").value!="" && document.getElementById("txt2").value!="")
 {
  a=parseFloat(document.getElementById("txt1").value);
  b=parseFloat(document.getElementById("txt2").value);
  document.getElementById("txt3").value=(a/b).toFixed(2);
 }
}
</script>
</head> 
<body> 
<input onchange="compute()" value="123123"  id="txt1"> 
<input onchange="compute()" value="123123"  id="txt2"> 
<input id="txt3" readonly> 
</body> 
</html>
  • 写回答

3条回答

  • cocotsau 2016-04-24 09:01
    关注

    两个地方改一下,把onchange改成oninput,另外加一个onload事件,初始化txt3的值,这样就可以同时满足:初始值和自动运算,请看demo

     <html> 
    <head>
    <script type='text/javascript'>
    onload=function(){
        var a=parseFloat(document.getElementById("txt1").value),
        b=parseFloat(document.getElementById("txt2").value);
        document.getElementById("txt3").value=(a/b).toFixed(2);
    }
    
    function compute(){
        a=parseFloat(document.getElementById("txt1").value);
        b=parseFloat(document.getElementById("txt2").value);
        if(a!="" && b!=""){
            document.getElementById("txt3").value=(a/b).toFixed(2);
        }
    }
    </script>
    </head> 
    <body> 
    <input oninput="compute()" value="123123"  id="txt1"> 
    <input oninput="compute()" value="123123"  id="txt2"> 
    <input id="txt3" readonly>
    
    </body> 
    </html>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥30 python代码,帮调试,帮帮忙吧