首页 新闻 搜索 专区 学院

怎样做实时反馈的计算器

0
悬赏园豆:30 [已解决问题] 解决于 2015-04-25 14:45

页面有三个文本框,前两个输入数字后,第三个框直接显示前两个文本框内数值相加后的结果,不需要通过control。这个能做吗?不能发图片,但愿大神们能看懂。。。别光说技术,求代码,实例也行啊。。。

问题补充:

,要用mvc实现。解决了,是这样写的:

<script>

var a = 0;
var b = 0;
var c = 0;
var result;

$(function () {

$("#InputFactor").blur(function () {
a = $("#InputFactor").val();
calc();
});
$("#DealFactor").blur(function () {
b = $("#DealFactor").val();
calc();
});
$("#OutputFactor").blur(function () {
c = $("#OutputFactor").val();
calc();
});

});

function calc() {

result = a * 0.58 + b * 1.66 + c*1.0;
$("#EstimateScale").val(result);
}
</script>,谢谢各位

俺是新手的主页 俺是新手 | 初学一级 | 园豆:117
提问于:2015-04-24 15:18
< >
分享
最佳答案
0
<!DOCTYPE html>
<html>
  <head>
    
  </head>
  <body>
    <input type="text" id="in1">
    <input type="text" id="in2">
    <input type="text" id="in3">
    <hr />
    <input type="text" readonly="readonly" id="in4">
    <script>
      var in1 = document.getElementById('in1'),
          in2 = document.getElementById('in2'),
          in3 = document.getElementById('in3'),
          in4 = document.getElementById('in4');

      var calcResult = function(){
        var v1 = parseFloat(in1.value, 10),
            v2 = parseFloat(in2.value, 10),
            v3 = parseFloat(in3.value, 10);
        in4.value = (v1 || 0) * 0.58 + (v2 || 0) * 1.66 + (v3 || 0);
      };
      in1.onkeyup = function(){
        calcResult();
      }
      in2.onkeyup = function(){
        calcResult();
      }
      in3.onkeyup = function(){
        calcResult();
      }  
    </script>
  </body>
</html>

大概就这样,细节自己处理。

收获园豆:20
幻天芒 | 高人七级 |园豆:36594 | 2015-04-24 17:39
其他回答(3)
0

运算符是固定的?直接注册3个框的change事件不就得了

收获园豆:3
吴瑞祥 | 园豆:28830 (高人七级) | 2015-04-24 15:19

嗯,固定,change 要写在view内还是model内?

支持(0) 反对(0) 俺是新手 | 园豆:117 (初学一级) | 2015-04-24 15:22

@俺是新手: 这种东西写JS就可以了把?不用viewmodel的

支持(0) 反对(0) 吴瑞祥 | 园豆:28830 (高人七级) | 2015-04-24 16:45

@吴瑞祥: 貌似用fanction,我研究研究,谢谢你。

支持(0) 反对(0) 俺是新手 | 园豆:117 (初学一级) | 2015-04-24 17:26
0

keyup效果会更好

收获园豆:3
刘宏玺 | 园豆:14006 (专家六级) | 2015-04-24 15:26

能具体一点吗?基础不太好。

支持(0) 反对(0) 俺是新手 | 园豆:117 (初学一级) | 2015-04-24 15:28

那就ajax

 

支持(0) 反对(0) 刘宏玺 | 园豆:14006 (专家六级) | 2015-04-24 15:28
0

能做的,在文本框事件改变时去计算就行了.

收获园豆:4
Albert Fei | 园豆:2102 (老鸟四级) | 2015-04-24 15:28
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册