嗨,我正在创建一个由计算组成的表单,但我遇到了一个问题,我无法解决它问题是我有一个文本框,它将显示一些数值,我想添加一些值到它的现有值,并希望在同一文本框中显示该值,例如 如果文本框中的值为'10'并且我想添加更多10将导致'10 +10'并且将在同一文本框中显示输出20 这是我的代码
var mbill = $("#billamt").val();// this will have a default value
$(".cal").each(function() {
if (!isNaN(this.value) && this.value.length != 0) {
bill += parseFloat(this.value);
}
});
var finalamt = mbill + bill;
console.log(finalamt);
$("#billamt").val(finalamt.toFixed(2));
答案 0 :(得分:0)
我认为你的变量超出了范围,但如果没有你的所有代码,很难说清楚。变量bill
在哪里声明?您还需要解析mbill
变量,以使其不被视为文本。
这就是你要追求的吗?
<input class=cal type=text /><br />
<input class=cal type=text /><br />
<br /><br />
<input id=numtoadd type=text value=10 /><br />
var mbill = parseFloat($("#numtoadd").val());
$(".cal").keyup(function(){
var bill = 0;
$(".cal").each(function(){
if (!isNaN($(this).val()) && $(this).val().length != 0) {
bill += parseFloat($(this).val());
}
});
$("#numtoadd").val(mbill + bill);
});
更新了小提琴:http://jsfiddle.net/MTgpN/2/
答案 1 :(得分:0)
var bill;
var mbill = $("#billamt").val();// this will have a default value
$(".cal").each(function() {
if (!isNaN($(this).val()) && $(this).val().length != 0) {
bill += parseFloat($(this).val());
}
});
var finalamt = mbill + bill;
console.log(finalamt);
$("#billamt").val(finalamt.toFixed(2))