我有这样的表:
<table class="table table-striped table-bordered">
<tbody id="itemlist">
<tr>
<td><input type="hidden" name="item[code][]" value="1">Fotocopy</td>
<td><input type="number" class="qty" name="item[qty][]" value="2"></td>
<td><input type="number" class="price" name="item[price][]" value="200"></td>
<td><p class="total">400</p></td>
<td><a href="javascript:void(0);" id="hapus">Hapus</a></td>
</tr>
<tr>
<td><input type="hidden" name="item[code][]" value="1">Download</td>
<td><input type="number" class="qty" name="item[qty][]" value="2"></td>
<td><input type="number" class="price" name="item[price][]" value="2000"></td>
<td><p class="total">4000</p></td>
<td><a href="javascript:void(0);" id="hapus">Hapus</a></td>
</tr>
</tbody>
</table>
如何在所选行上获取所有输入元素,如果我在第二行更改数字字段?
$(document).on('keypress','input.qty', function(e) {
if(e.keyCode==13){
e.preventDefault();
$(this).closest('td').find("input.qty").each(function(index) {
var x = this.value;
var price = $(this).closest('tr td').find("input.price").val() ;
var qty = $("input.qty").val() ;
var total = price * qty;
console.log(price);
//$("p.total").html(total);
return false;
});
}
});
创建了一个小提琴
如果有人可以给我一些想法,那将非常有帮助
提前致谢
答案 0 :(得分:3)
而不是在按键上使用更改功能。 这里的代码可能对您有用。
$('.qty').on('change',function(){
var price = $(this).parents('tr').find(".price").val() ;
var qty = ($(this).val());
var total = price * qty;
$(this).parents('tr').find(".total").text(total);
});
答案 1 :(得分:0)
谢谢@Help,它有效
我几乎没有更改您的代码:
$(document).on('blur','.qty',function(){
var price = $(this).parents('tr').find(".price").val() ;
var qty = ($(this).val());
var total = price * qty;
$(this).parents('tr').find(".total").html(total);
});