2014-10-11 47 views
0

對不起,發佈這個問題,但我有點新手,當涉及到js。我已經創建了一個簡單的頁面來計算收費交易,因此它只需將QuantityPrice乘以.25%即可。但在這裏的伎倆,如果總積小於50Charge場應默認50而這也正是我有點失落,js - 如果目標值不符合,如何默認爲特定值

這裏是我的代碼:

<tr> 
    <td width="144">Quantity:</td> 
    <td width="63"><input type="text" name="quantity" id="quantity" size="8"/></td> 
</tr> 
<tr> 
    <td>Price:</td> 
    <td><input type="text" name="price" id="price" size="8"/></td> 
</tr> 
    <tr> 
    <td colspan="4"><strong>Charges:</strong></td> 
    </tr> 
<tr> 
    <td>Charge:</td> 
    <td><input style="color:#F00" type="text" name="charge" id="charge" size="8" readonly="readonly" /></td> 
    <td colspan="2">Quantity x Price x .25% OR 20 whichever is higher</td> 
</tr> 

這裏是js我設法有,

$(function() { 
     $("#quantity, #price").keyup(function() { 
      var q = parseFloat($("#quantity").val()); // Quantity 
      var p = parseFloat($("#price").val()); // Price 
      if (isNaN(q) || isNaN(p) || q<=0 || p <= 0) { 
       $("#charge").val(''); 
       return false; 
      } 
      $("#charge").val((q * p * 0.0025).toFixed(3)); // Charge 
     }); 
    }); 
+0

你在哪裏乘以數量和價格?在此之後,只要放一個'if(總數<50)'來設置默認總數。 – Barmar 2014-10-11 04:07:10

回答

1

把總在變量中,將其放入DOM之前對其進行測試:

$(function() { 
    $("#quantity, #price").keyup(function() { 
     var q = parseFloat($("#quantity").val()); // Quantity 
     var p = parseFloat($("#price").val()); // Price 
     if (isNaN(q) || isNaN(p) || q<=0 || p <= 0) { 
      $("#charge").val(''); 
      return false; 
     } 
     var total = q * p * 0.0025; 
     if (total < 50) { 
      total = 50; 
     } 
     $("#charge").val(total.toFixed(3)); // Charge 
    }); 
}); 

另一種方法是使用Math.max()

$("#charge").val(Math.max(50, q * p * 0.0025).toFixed(3)); // Charge 
+0

,做了伎倆...感謝您的幫助! – user2579439 2014-10-11 04:22:38

相關問題