3

我知道这是一个非常基本的问题,但我坚持这一点。我有两个输入框,我想计算这些输入并将结果立即显示到另一个输入(第三个)中,而无需提交按钮。我的意思是,一旦我开始将值输入到输入中,结果将在第三个输入中实时显示,这代表结果......

<input type="text" class="input value1">
<input type="text" class="input value2">
<input type="text" disabled="disabled" id="result">

<script>
 $(document).ready(function(){
      var val1 = $(".value1").val();
      var val2 = $(".value2").val();
      $(".input").keyup(function(){
         $("#result").text(val1+val2);
       });
});
</script>
4

4 回答 4

11

将 val1 和 val2 放在 keyup 语句中。

$(document).ready(function(){
    $(".input").keyup(function(){
          var val1 = +$(".value1").val();
          var val2 = +$(".value2").val();
          $("#result").val(val1+val2);
    });
});

看小提琴:http: //jsfiddle.net/g7zz6/

于 2013-10-24T16:41:36.887 回答
1

如您所说,在 SUM 的假设下,输入本质上是数字的。

$(".input").on("change", function(){
    var ret = Number($(".value1").val()) + Number($(".value2").val());
    $("#result").val(ret);
}
于 2013-10-24T16:46:29.460 回答
0

只需设置文本值,您还需要解析它们,否则它们将被连接为字符串。

$(document).ready(function () {
    var val = parseInt($(".value1").val()) + parseInt($(".value2").val());
    $("#result").text(val);
});

现场演示

于 2013-10-24T16:42:34.503 回答
-1
 function addinput(){ 
   var x= Number(document.getElementById("first").value);
   var y= Number(document.getElementById("second").value);
   var z= Number(x+y);
   document.getElementById("l").value = Number(z);     
 }
于 2015-11-20T09:20:54.167 回答