所以我有几个小时无法解决的问题..
当我按下“Pridėtiprekę”按钮时,会在表格中动态添加一行,当我在“Kiekis”和“Kaina”列中写入数字时,“Suma”列中没有任何反应(只会动态添加行) )。
一块jQuery:
let averagePower = audioRecorder.averagePowerForChannel(0)
请看JSFiddle如何“正常工作”我的代码:
https://jsfiddle.net/w5qz5exe/7/
提前感谢您的帮助!
P.S我试图从div ID total更改为div class total,然后它可以工作,但它适用于所有行而不是相关的。
答案 0 :(得分:1)
您使用id引用了所有内容。
$(document).on('keyup', '.quantity, .price', function() {
var row = $(this).closest('tr');
var rowPrice = $(row).find('.price').val();
var rowQuantity = $(row).find('.quantity').val();
$(row).find('.total').val( (rowPrice * rowQuantity).toFixed(2) )
});
答案 1 :(得分:0)
您的问题是输入使用的是id而不是其他内容。在查找有问题的项目时,搜索会在找到的第一个ID上停止。
这个更新的小提琴https://jsfiddle.net/w5qz5exe/11/显示了如何使用类完成它。
$(document).on('keyup', '.quantity, .price', function(e) {
var $parent = $(e.target).parents('tr'),
$total = $parent.find('.total'),
$quantity = $parent.find('.quantity'),
$price = $parent.find('.price');
$total.val(($quantity.val() * $price.val()).toFixed(2));
});
除上述内容外,还会从输入中删除所有ID,并将其更改为类。