我想寫一些簡單的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'? –