Uncaught TypeError: Cannot read property 'childNodes' of null

本文介绍了一次在页面上添加新字段时遇到的问题及解决方案。问题出现在使用jQuery的each函数迭代数据并动态生成HTML元素的过程中,由于计算字段的代码中缺失了必要的HTML标签导致显示异常。通过对代码进行调整,成功解决了该问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天在页面加字段的时候犯了一个很sb的问题:

页面加字段,我是通过ajax返回的数据,所以页面展示的时候,就是用js遍历取得数据。

在jquery中也就是用each函数。

代码如下:

<span style="font-size:14px;">if(result.list){
					$.each(result.list,function(i,item){
						var var_tr;
						var td_radio="<td rowspan='2'><input type='radio' name='policy' /></td>";
						var td_productSource="<td>"+item.product.productSource+"</td>";//政策来源
						var td_offNo="<td>"+item.product.offNo+"</td>";//政策出票offNo
						var td_ticketPar="<td>"+item.ticketPar+"</td>";//所有人合计票面价
						var td_disPrice="<td>"+item.disPrice+"</td>";//单人支付价 销售价,不含税
						var td_payPrice="<td>"+item.payPrice+"</td>";//所有人合计支付金额(含税)
						var td_tax="<td>"+item.tax+"</td>";//所有人合计税费
						var td_farePrice="<td>"+item.farePrice+"</td>";//票面价/单个人
						var td_rebates="<td>"+item.rebates+"</td>";//返点
						var td_promotion="<td>"+item.promotion+"</td>";//奖励返点
						var td_after="<td>"+item.after+"</td>";//后返
						var td_fixedFee="<td>"+item.fixedFee+"</td>";//奖金
						var td_yj="<td>"+item.yj+"</td>";//佣金
						//这里加一个单张票的利润。利润是在这里计算出来的。
						var td_lr=item.disPrice-(item.farePrice*(1-item.rebates-item.promotion-item.after)-item.fixedFee);
						
						var_tr="<tr>"+td_radio+td_productSource+td_offNo+td_ticketPar+td_disPrice+td_payPrice+td_tax+td_farePrice+td_rebates+td_promotion+td_after+td_fixedFee+td_yj+td_lr+"</tr>";
						var td_remark="<tr><td  colspan='13'>"+item.product.remark+"</td></tr>";//备注
						$("#table-bd").append(var_tr+td_remark);
					});
				}</span>

注意上面的代码,出错的代码在这个地方:

<span style="font-size:14px;">//这里加一个单张票的利润。利润是在这里计算出来的。
						var td_lr=item.disPrice-(item.farePrice*(1-item.rebates-item.promotion-item.after)-item.fixedFee);</span>
因为它和其他的是不一样的,在这个字段的前后,没有html标签,也就是缺少<td></td>标签,问题解决。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值