我想写一些简单的HTML/jQuery将应用相同的计算到不同的领域。应用相同的计算,以不同的输入使用JQuery
我简单的问题到下面的HTML:
<h1>Multiplication by line</h1>
<table>
<tr>
<td>Number 1</td>
<td>Number 2</td>
<td>Result</td>
</tr>
<!-- LINE ITEM START -->
<div class="lineitem">
<tr>
<td>
<input type="number" name="a" class="a" value="" />
</td>
<td>
<input type="number" name="b" class="b" value="" />
</td>
<td>
<div class="total">0 </div>
</td>
</tr>
</div>
<!-- LINE ITEM END -->
<div class="lineitem">
<tr>
<td>
<input type="number" name="a" class="a" value="" />
</td>
<td>
<input type="number" name="b" class="b" value="" />
</td>
<td>
<div class="total">0</div>
</td>
</tr>
</div>
和jQuery:
$(document).ready(function() {
$(".lineitem").each(function() {
function compute() {
var a = $('.a').val();
var b = $('.b').val();
var total = (a * b);
$('.total').text(total);
}
$('.b, .a').change(compute);
})
});
但这返回基于第一线的数据条目中的每个线相同的结果。我显然希望用户在每一行中输入不同的值,并获得每行不同的结果。我试着用“每”和“$(本)。儿童”如下,但它没有工作:
$(document).ready(function() {
$(".lineitem").each(function() {
function compute() {
var a = $(this).children('.a').val();
var b = $(this).children('.b').val();
var total = (a*b);
$(this).children('.total').text(total);
}
$('.b, .a').change(compute);
})}); */
Here's a JSFiddle with everything.
真的希望有人能帮助!我已经做了搜索对基本问题公平一点,但没有喜悦在这里...道歉,如果这是一个重复
被包围在'div'? –