我有这个 fiddle
其中我有一个带有两个按钮 +
和 -
的输入类型,我想将输入的值添加到表中的所有单位值中。
JQuery 看起来像这样
$(".commission").TouchSpin({
min: 0,
max: 2,
step: 0.0001,
decimals: 4,
boostat: 5,
maxboostedstep: 10,
buttondown_class: 'btn btn-white',
buttonup_class: 'btn btn-white'
});
$(".commission").on('touchspin.on.startupspin', function() {
var table = $(this).parent().parent().parent().prev().find('table');
console.log(table.rows);
})
以及您可以在 fiddle 本身中看到的 HTML
最佳答案
我已经更新了您的Fiddle使用以下代码:
$(".commission").on('touchspin.on.stopspin', function() {
var cells = $(this).parent().parent().parent().parent().find('table.cust-tbl td');
for (var i = 0; i < cells.length; i++) {
var $cell = cells.eq(i);
var num = $cell.data('num');
if (num === undefined || num == null) {
num = $cell.text().match(/[\d.]+/);
if (num) {
$cell.data('num', num[0]);
}
}
num = +$cell.data('num');
if (num) {
num += (+$(this).val());
$cell.text($cell.text().replace(/[\d.]+/, num.toFixed(4)));
}
}
});
此代码将原始值存储在单元格的 data
属性中,并将值添加到其中。
还将事件更改为 stopspin
,以便在完成选择值(向上或向下)时触发。
添加了四舍五入到小数点后 4 位.toFixed(4)
。
关于javascript - 如何在Jquery中迭代Table来更改内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44369188/