大家好我想问一下如何使用jquery执行自动计算? 例如,如果我有3个文本框。文本框1用于数量,文本框2用于价格,文本框3用于结果。当用户在文本框1和文本框2中输入值时,文本框3将自动解决计算(价格*数量)。如果用户那就是所有人我希望你能帮助我。感谢。
这是我的HTML代码。
<tr>
<td><input type='text' name='qty' id='qty' value='' />
<td><input type='text' name='price' id='price' value='' />
<td><input type='text' name='total' id='total' value='' />
</tr>
在javascript中我该如何进行计算?
答案 0 :(得分:3)
处理输入更新事件的最佳方法是使用jQuery.on('input',...)
。您可以使用parseFloat
和parseInt
从其他输入toFixed
获取值,以确保最终值看起来像货币(如果不需要则删除它),并提供后备如果无法解析某些内容,则为0。
$('#qty, #price').on('input',function() {
var qty = parseInt($('#qty').val());
var price = parseFloat($('#price').val());
$('#total').val((qty * price ? qty * price : 0).toFixed(2));
});
答案 1 :(得分:0)
你必须给你的文本框一个类名,然后遍历该类并添加它们的值。
让我们说这是你的文字字段
<input type="text" class="row-total">
这就是你添加它们的方式
var total = 0;
$.each(".row-total", function(){
total += $(this).val()
});
答案 2 :(得分:0)
在这件事中你需要给textbox1和textbox2一个(“Comp”)类名 例如:
<input type="text" name="textbox1" class="Comp">
<input type="text" name="textbox2" class="Comp">
然后这将是脚本:
$(document).ready(function(){
$(".Comp").change(function(){
var total = 0.00;
var textbox3= 0.00; // this gonna be your third textbox
$(".Comp").each(function(){
total += parseFloat(this.value);
});
textbox3= $("#textbox3").val((total).toFixed(2));
});
});
注意:只需编辑适合您需要的计算。这个只添加两个文本框(textbox1和textbox2)