Uncaught TypeError Cannot set properties of undefined (setting ‘innerHTML‘)的错误

错误出现的前提:

页面中的Table每一行有一个删除按钮,当删除此行数据之后,需要对序号的值进行动态的更新(在另一篇文章中)。

当执行了删除操作 -> 再次添加新的数据 ->执行删除操作的时候就会出现标题中的错误。

解决方向:

思路一:加载时

由于页面加载顺序为:结构>样式>行为(html>css>JavaScript)。

如果js部分写到了页面内容的前面,那么在加载的时候,浏览器的加载顺序(错误顺序)是js>html,所以就有可能报标题中的错误。

解决办法一:

将js挪到最下面就好啦!

但是我的js确实是写在最下面的,所以并不是这种错误。

思路二:

既然可能是加载的问题,那会不会是我在删除tr之后,程序还未反应过来那是不可以让其等待一段时间之后再进行序号的排序。

setTimeout(function(){
	sortOrder();
}, 3000);

但是经过实践证明,这种思想是错误的,因为我的程序这么简单,而且就算很大也不会有延迟吧。

思路三:

在经过长时间的百度百度百度…依旧没有解决之后。在网页中随意点击table的源代码的时候,突然发现有一行tbody中有一行空白的tr,这是为什么呢

原因:我的模块是当重新进行选人员之后,点击确定之后会先删除掉原来的table中所有的信息,再将挑选的人员信息添加到table中。

使用的代码:

//该方式只是将内容清空,但是并不会删除tr
//会有一个空白的tr
$(".table-bordered  tr:not(:fi
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值