![](/img/trans.png)
[英]JavaScript: How to get value of sender input element from keyup event?
[英]How to add and substarct value in javascript on keyup event?
我正在嘗試使用javascript做一項任務,我有兩個文本框,一個是總金額,第二個是折扣,我的總金額為例如100,當我在打折文本框中插入折扣時,必須減去插入的折扣從總金額中扣除,但當我刪除該折扣時,該值必須與我之前嘗試過的相同,但它減去了價值,但當刪除折扣時,它不起作用,請幫助。 提前致謝。
$(".form-basic .grand-discount").on('keyup', function () {
var gross= $('input[name="total_gross_amount"]').val();
var totalDiscount = $(this).val();
if(totalDiscount != '')
{
var total=gross-totalDiscount;
}
else{
var total=gross+totalDiscount;
}
$('input[name="total_gross_amount"]').val(total);
});
$(".form-basic .grand-discount").on('keyup', function () {
var gross= $('input[name="total_gross_amount"]').val();
var totalDiscount = $(this).val();
if(totalDiscount.length>0) {
var total=gross-totalDiscount;
} else{
var total=gross;
}
$('input[name="total_gross_amount"]').val(total);
});
試試這個。
正如@Chris G在評論中建議的那樣,我編輯了他的小提琴(這只是一個示例,說明如何完成此操作,但是由於發問者並未提供所有信息,因此我們已完成了此操作):
$(".form-basic input").on('input', function() { var gross = $('input[name="total_gross_amount"]').val(); var totalDiscount = $('.grand-discount').val(); var total = gross - totalDiscount; $('#total').html(total); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <form class="form-basic"> <input type="number" class="total_gross_amount" name="total_gross_amount"> <input type="number" class="grand-discount" name="grand-discount"> </form> <p>Total: <span id="total"></span></p>
我認為這可以解決您的問題,關鍵是從輸入事件中消除毛病:
$(document).ready(function(){
var gross= $('input[name="total_gross_amount"]').val();
$(".form-basic .grand-discount").on('keyup', function () {
var totalDiscount = $(this).val();
if(totalDiscount != '')
{
var total=gross-totalDiscount;
}
else{
var total=gross+totalDiscount;
}
$('input[name="total_gross_amount"]').val(total);
});
});
此處的完整示例https://jsfiddle.net/wkj0jjvp/
如果要更新總金額,則應為總金額設置一個事件,並將其放入折扣事件中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.