jQuery累加HTML中price类值时如何跳过字符串仅统计数值?
解决方案
修改逻辑说明
- 遍历
class=price的节点时,先对取到的文本做去空格处理,再尝试转换为整数 - 用
isNaN()方法判断转换结果是否为有效数值:如果为非数字(即原字段为非数值字符串)直接跳过该值不参与统计 - 仅将有效数值累加到总统计值中
调整后完整JavaScript代码
var theSummry = 0; $(".price").each(function() { const currentPrice = parseInt($(this).text().trim()); // 非有效数值直接跳过当前循环 if (isNaN(currentPrice)) return true; theSummry += currentPrice; }) // 适配tr节点的展示,新增跨3列的td承载总金额 $(".the-total").html(`<td colspan="3">总计:${theSummry}</td>`);
按你提供的HTML示例测试,有效price值为10、10、30、10,最终统计结果为60,非数值的qwe会被自动过滤,不会影响统计结果。
内容的提问来源于stack exchange,提问作者haroun
相关产品推荐
相关产品推荐

