javascript - 使用 jQuery 计算两个动态创建的文本框的总和
问题描述
HTML:
<table id="tbl" border="1">
<tr>
<th>Name</th>
<th>Mark1</th>
<th>Mark2</th>
<th>Total</th>
</tr>
<tr>
<td><input type="text"></td>
<td><input type="text" class="cell"></td>
<td><input type="text" class="cell"></td>
<td><b><span id="total_sum_value"></span></b></td>
<td><b><span id="total_sum_value1"></span></b></td>
<th><input class="add-row" data-id="1" type="button" value="+"></th>
</tr>
</table>
JavaScript:
$(document).ready(function(){
var i = $(".add-row").data("id");
$(".add-row").click(function(){
$('#tbl').append('<tr><td><input type="text"></td><td><input type="text"></td><td><input type="text"></td></tr>');
var two = $("input").addClass("cell"+i);
$("#tbl").on('input','.cell'+i,function(){
var sum1 = 0;
$(".cell"+i).each(function() {
var get_val = $(this).val();
sum1 += parseFloat(get_val);
});
$("#total_sum_value1").html(sum1);
});
i++;
});
$("#tbl").on('input','.cell',function(){
var sum = 0;
$('.cell').each(function(){
var get_val = $(this).val();
sum += parseFloat(get_val);
});
$("#total_sum_value").html(sum);
});
});
当您单击加号按钮时,它会生成三个文本框。我想计算这些文本框的总和并将其打印在一个跨度中。
这是我的代码的 CodePen:https ://codepen.io/anon/pen/XBqKVZ?editors=1010
解决方案
你能试试这样吗:
$('.cell').on('change', function(){
var sum = 0;
var data ={
}
$('.cell').each(function(index, item){
var val = $(item).val();
var get_val = $(this).val();
sum += Number(get_val);
console.log(sum);
});
$("#total_sum_value").html(sum);
});
网址:jsfiddle
推荐阅读
- jenkins - 詹金斯“从磁盘重新加载配置”不起作用
- azure-iot-hub - 在发送到 ServiceBus 队列之前将 SessionId 添加到 IoTHub 消息
- c# - C# Graphics.DrawImage() 尝试组合多个图像时抛出内存不足异常
- php - 如果我无法更改我的 PHP (PHP 5) 版本,如何避免“PHP 严格标准”
- github - Azure 数据工厂部署更改在与 git 存储库集成后未反映
- sql-server - 运行更新表的存储过程时,表上的选择查询挂起
- javascript - 如何使用 JavaScript 库使用椭圆曲线破译加密消息?
- assembly - 8051 汇编程序将值从一个范围复制到另一个范围,保持奇数值并将偶数值转换为 BCD
- java - keycloak:javax.ws.rs.BadRequestException: HTTP 400 错误请求,同时创建一个新领域
- python - 如何确保在一个类中,从一个数据框中删除行会删除另一个数据框中的一行