Uncaught TypeError: Cannot set properties of null (setting ‘innerHTML‘)报错的一种

未捕获的类型错误:无法设置 null 的属性(设置 ‘innerHTML’)
这种一般来说就是没有获取到该元素:
就好比html的ID名是files-list

<ul id="files-list"></ul>

,但是你在写的时候是这样的:

let fileList = document.getElementById("file-list");

于是乎:

  fileList.innerHTML = "";

这行就开始报错了。
然后你把这行注释掉,发现不出问题了,接着往下写:

fileList.appendChild(listItems);

就又开始报错了:

20.js:18 
        
       Uncaught TypeError: Cannot read properties of null (reading 'appendChild')

于是,我终于意识到,这个元素应该没有被获取到

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: "uncaught typeerror: cannot set properties of null" 意思是在设置 innerHTML 属性时出现了误,因为 null 没有 innerHTML 属性可以设置。这通常是因为程序中的变量或对象未正确初始化或引用了不存在的元素,导致该变量或对象为 null。 ### 回答2: 这是一个JavaScript误,通常意味着你尝试设置nullinnerHTML属性。在JavaScript中,null表示一个空的值,也就是没有值。如果你正在尝试使用innerHTML属性设置null的内容,JavaScript将抛出Uncaught TypeError误。 通常这种误出现在尝试访问或修改DOM元素时。例如,你可能正在尝试使用document.getElementById()方法获取一个不存在的元素,或者正在尝试使用innerHTML属性设置一个不存在的元素的内容。这些都会导致Uncaught TypeError误。 为了解决这个误,你需要找出代码中出现了什么问题。首先确认你正在尝试访问或修改的元素是否存在。如果不存在,修复代码以确保你可以正确地获取到元素。如果元素存在,检查你的代码是否正确设置了其属性。确保你没有尝试在null元素上设置属性。 要防止出现这种类型的误,你可以在访问或修改DOM元素之前对其进行条件检查,以确保元素存在。如果元素不存在,可以弹出一个警告消息或者进行其他误处理操作。 总之,该误意味着你在尝试操作null值,而这是不允许的。通过检查你的代码并确保正确访问和设置DOM元素属性,你可以轻松地避免这种类型的误。 ### 回答3: 这个误是JavaScript中的一个常见误,通常出现在访问DOM元素时,该元素未能被正确地引用。在这种情况下,often会在调试控制台中显示误消息: "uncaught typeerror: cannot set properties of null (setting 'innerhtml')”。 这个误是由于JavaScript尝试对一个未被初始化的元素进行写入操作而导致的。在这种情况下,浏览器会解释代码并尝试找到要修改的元素,但由于元素未正确初始化或不存在,代码就会停止执行并出现误。 解决这个误的最佳方法是确保所有DOM元素都已被正确引用。如果您想要设置元素的innerhtml属性,您必须确保该元素存在并且已被正确地引用。您可以使用JavaScript中的getElementById()方法来获取DOM元素并将其存储在变量中,然后可以在代码中引用该变量以进行写入操作。 如果您发现自己无法成功引用元素,您可能需要检查元素的ID或其他属性是否正确。您还可以使用浏览器的开发工具来检查文档结构并确定元素是否存在。 总之,这个误通常是由于JavaScript试图引用未初始化的DOM元素而导致的。确定所有DOM元素都已被正确引用,可以解决这个误,并确保代码能顺利运行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值