You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

点击按钮后如何用JavaScript移除HTML元素的onclick属性?

解决点击按钮后移除div onclick事件的问题

你的代码没生效主要有三个问题:

  • 方法名拼写错误:应该是document.getElementsByClassName()(注意末尾的s,这是返回元素集合的方法),不是getElementByClassName
  • 类名不匹配:目标div的类是boardsection2,但你代码里写的是boardsection1
  • 未处理元素集合:getElementsByClassName返回的是多个元素的集合,需要指定具体元素(比如第一个)

下面是两种可行的修复方案:

方案1:修正类名获取逻辑

把按钮绑定的test()函数改成如下代码:

function test() {
  // 获取类为boardsection2的第一个元素
  const targetDiv = document.getElementsByClassName("boardsection2")[0];
  // 移除onclick属性
  targetDiv.removeAttribute("onclick");
}

方案2:通过ID获取(更推荐)

因为目标div有唯一ID2_8_7,直接用ID获取元素更精准,避免类名重复的问题:

function test() {
  const targetDiv = document.getElementById("2_8_7");
  targetDiv.removeAttribute("onclick");
}

可选优化:用事件监听的方式管理(如果后续需要恢复事件)

如果你的事件不是用内联onclick绑定,而是通过addEventListener绑定的,可以用对应的removeEventListener来移除:

// 假设之前的绑定代码是:
// const targetDiv = document.getElementById("2_8_7");
// const clickHandler = () => divclick('2_8_7');
// targetDiv.addEventListener("click", clickHandler);

// 移除事件的test函数:
function test() {
  const targetDiv = document.getElementById("2_8_7");
  targetDiv.removeEventListener("click", clickHandler);
}

内容的提问来源于stack exchange,提问作者Bobthefishmonger

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 13:17:21