0

我用这个来calculate total。这是总脚本

<!DOCTYPE HTML>
<html lang="en-IN">
<head>
  <meta charset="UTF-8">
  <title></title>
  <script type="text/javascript" src="js/jquery1.7.2.js"></script>
</head>
<body>
  <script type="text/javascript">
    jQuery(document).ready(function(){
      jQuery("#quantity, #unit_price, #tax").on('change',function(event){
        var subtotal = jQuery("#quantity").val() * jQuery("#unit_price").val();
        var total = subtotal + (subtotal  * jQuery("#tax").val() / 100);
        jQuery("#total").val(total);
      });
    });
  </script>
  <table>
    <tr>
      <td>
        <label for="unitcost">Unitcost</label>
        <input type="text" id="unit_price" />
      </td>
     </tr>
     <tr>
      <td>
        <label for="quantity">Quantity</label>
        <input type="text" id="quantity" />
      </td>
    </tr>
    <tr>
      <td>
        <label for="tax">Tax</label>
        <input type="text" id="tax" />
      </td>
    </tr>
    <tr>
      <td>
        <label for="total">Total</label>
        <input type="text" id="total" />
      </td>
    </tr>
  </table>
</body>
</html>

但是有一个问题。Every time我必须click the text field得到result. 我希望当用户愿意时enter the values in their fields it should show the total without click on input fields。我认为jquery ajax会在这里工作,但不知道如何在此实现。任何帮助和建议都将不胜感激。

4

2 回答 2

1

您可以尝试使用与单击不同的事件,例如 keyup

试试这个小提琴

所以而不是jQuery("#quantity, #unit_price, #tax").on('click',function(event){

利用jQuery("#quantity, #unit_price, #tax").on('keyup',function(event){

于 2012-09-16T17:03:47.653 回答
1

使用 .keyup() 它将显示总数而无需单击输入字段

jQuery("#quantity, #unit_price, #tax").keyup(function(event){

或者

jQuery("#quantity, #unit_price, #tax").on('keyup',function(event){
于 2012-09-16T16:59:57.560 回答