<div id="container">
<div class="jumbotron" id="group">
<form class="form-inline">
<div class="form-group">
<label for="groupNumber">Group:</label>
<input type="text" class="groupNumber" />
</div>
<div class="form-group inputTop">
<label for="quantity">Quantity:</label>
<input type="text" class="quantity" />
</div>
<div class="form-group inputTop">
<label for="systemPrice">System Price:</label>
<input type="text" class="systemPrice" />
</div>
<div class="form-group">
<label for="groupTotal">Group Total:</label>
<input type="text" class="groupTotal" />
</div>
</form>
<div class="row specs" id="pasted" contenteditable="true"></div>
</div>
</div>
$(document).ready(function() {
$('.inputTop input').keyup(multInputs);
function multInputs() {
$('.inputTop').each(function() {
var $quantity = $('.quantity', this).val();
var $systemPrice = $('.systemPrice', this).val();
var $groupTotal = ($quantity * 1) * ($systemPrice * 1)
$('.groupTotal', this).text($groupTotal);
});
}
});
JS小提琴:https://jsfiddle.net/waynebunch/jh6uhL1p/5/
我一直盯着这一眼,并没有看到任何错误。基本上,我正在尝试使用JQuery将var $quantity
乘以var $systemPrice
,并将结果显示在var $groupTotal
中。这些将有多个“群体”。谁能告诉我这里我做错了什么,或者我离开了?谢谢!
答案 0 :(得分:0)
替换:
$('.groupTotal', this).text($groupTotal);
使用:
$('.groupTotal', this).val($groupTotal);
答案 1 :(得分:0)
应该是
$('.groupTotal', this).val($groupTotal);
鉴于.groupTotal
是input
。
答案 2 :(得分:0)
你应该尝试这个功能:
function multInputs() {
$('.group').each(function() {
var $quantity = $('.quantity', this).val();
var $systemPrice = $('.systemPrice', this).val();
var $groupTotal = (parseInt($quantity) * 1) * (parseInt($systemPrice) * 1)
if(isNaN($groupTotal))
$('.groupTotal', this).val('');
else
$('.groupTotal', this).val($groupTotal);
});
我希望你能得到你想要的结果
答案 3 :(得分:0)
除了其他人所说的内容(使用val
代替text
),您还在错误的选择器上调用each
方法。
类quantity
和systemprice
的元素是不是具有类inputtop
的元素的子元素。相反,使用
$(".form-inline").each( ... );