两个文本框JS动态计算问题,第一个输入值后 第二个比如自动加上0.2后(第一个框输入1  第二框自动是1.2)  这2个文本框都有值后然后再每个文本框加上0.5 (第一框变成1.5,第二框变成1.5)  应该怎么弄

解决方案 »

  1.   

    <html>
    <head>    <script>
      window.onload = function()
      {
      var t1 = document.getElementById("t1");
     
      t1.onkeyup = function(){
      if(this.value!=""&&/^\d+$/.test(this.value))
      {
      var t2 = document.getElementById("t2");
      t2.value = parseFloat(this.value)+0.2;
      }  
      }
      t1.onblur = function()
      {
        this.value=  parseFloat(this.value)+0.5;
        var t2 = document.getElementById("t2");
      t2.value = parseFloat(t2.value)+0.5;
      }
     
      }
        </script>
    </head>
    <body>
    <input type="text" name ="t1" id="t1"><br>
    <input type="text" name ="t2" id="t2" readonly="true">
    </body>
    </html>
      

  2.   

    可以啊,
    setTimeout就可以了.<html>
    <head>    <script>
      window.onload = function()
      {
      var t1 = document.getElementById("t1");
     
      t1.onkeyup = function(){
      if(this.value!=""&&/^\d+$/.test(this.value))
      {
      var t2 = document.getElementById("t2");
      t2.value = parseFloat(this.value)+0.2;
      }  
      }
      t1.onblur = function(){
      setTimeout(jj,2000);
        }
     
     
      }
     
      function jj()
      {  
        var t1 = document.getElementById("t1");
        var t2 = document.getElementById("t2");
        t1.value = parseFloat(t1.value)+0.5;
      t2.value = parseFloat(t2.value)+0.5;
      }
        </script>
    </head>
    <body>
    <input type="text" name ="t1" id="t1"><br>
    <input type="text" name ="t2" id="t2" readonly="true">
    </body>
    </html>