两个场之间的交叉计算

时间:2018-01-10 09:41:36

标签: javascript

我有两个字段'value_figure'和'value_btc',我想进行交叉计算。

  1. 当数字为'value_figure'时,例如4800,它将除以产品的价格。例如4000000,它会在'value_btc'字段中显示结果让我们说0.0012。

  2. 当十进制数在'value_btc'中时,例如0.0012,它将乘以产品的价格。例如4000000,它将显示结果让我们在'value_figure'字段中说4800。

  3.   <input class="form-control" id="id_value_figure" name="value_figure" title="" type="number" required />
    
       <input class="form-control" id="id_value_btc" name="value_btc" title="" type="text" required />
    

    如何在javascript中进行此操作?就此而言,我是一个菜鸟。

2 个答案:

答案 0 :(得分:1)

您可以使用getElementById来引用您的两个元素,addEventListener来引用change事件。除此之外还有一些简单的算法。

&#13;
&#13;
window.onload = function(){
   var figure = document.getElementById("id_value_figure");
   var btc = document.getElementById("id_value_btc");
   var price = 4000000 ;

   figure.addEventListener('change',function(){
      var val = parseInt(this.value,10);
      btc.value = val / price;
   });
   
   btc.addEventListener('change',function(){
      var val = parseFloat(this.value);
      figure.value = val * price;
   });
}
&#13;
<input class="form-control" id="id_value_figure" name="value_figure" title="" type="number" required />

<input class="form-control" id="id_value_btc" name="value_btc" title="" type="text" required />
&#13;
&#13;
&#13;

答案 1 :(得分:0)

    var price = 4000000 // Your value
    function btcConvert(valNum) {
      valNum = parseFloat(valNum);
      document.getElementById("id_value_figure").value = (valNum*price);
    }
    
    function figConvert(valNum) {
      valNum = parseFloat(valNum);
      document.getElementById("id_value_btc").value = (valNum / price);
    }
<input class="form-control" id="id_value_figure" name="value_figure" title="" type="number" oninput="figConvert(this.value)" onchange="figConvert(this.value)" required />

<input class="form-control" id="id_value_btc" name="value_btc" title="" type="number" oninput="btcConvert(this.value)" onchange="btcConvert(this.value)" required />