我的onchange不起作用

时间:2017-12-24 07:08:38

标签: javascript jsp-tags

我需要加倍价格,但功能不起作用。总不显示。以下是代码。

这是我的表格:

<label>Price</label>
<input type="text" id="price" name="price" value="<%=rs.getDouble(2)%>" onchange="autoprice()"/>

<label>Total</label>
<input type="text" id="total" name="total" readonly="readonly"/>

我的剧本:

<script>           
   function autoprice(){                 
      var x = document.getElementById("price").value;
      document.getElementById("total").value = (x * 2).toFixed(2);
   }
</script>

2 个答案:

答案 0 :(得分:0)

在这里,我制作了一段代码并且工作正常。

function autoprice() {
  var x = document.getElementById("price").value;
  document.getElementById("total").value = (x * 2).toFixed(2);
}
<label>Price</label>
<input type="text" id="price" name="price" value="" onchange="autoprice()" />

<label>Total</label>
<input type="text" id="total" name="total" readonly="readonly" />

答案 1 :(得分:0)

Onchange需要光标移出焦点。输入值后按Tab键或Enter键。如果要在更改值时动态更改它,请使用oninput,如下面的代码。

<label>Price</label>
<input type="text" id="price" name="price" value="" oninput="autoprice()"/>

<label>Total</label>
<input type="text" id="total" name="total" readonly="readonly"/>

<script>           
   function autoprice(){                 
      var x = document.getElementById("price").value;
      document.getElementById("total").value = (x * 2).toFixed(2);
   }
</script>