如何在JavaScript中点击子节点点击事件时删除父节点?

时间:2016-04-01 15:36:26

标签: javascript html

我在点击<p>时尝试删除<span>节点,包括所有子节点。 <span>位于<p>

HTML示例是:

<p>Hello World!<span>x</span></p>

我想用JavaScript而不是jQuery实现这一点。

我的代码是:

spancomment.addEventListener('click', deleteComment(this), false);
function deleteComment(e) {
    e.parentNode.parentNode.parentNode.removeChild(e.parentNode.parentNode);
}

我收到以下错误:

  

TypeError:undefined不是对象(评估   &#39; e.parentNode.parentNode&#39)

我跟着:How to remove the parent element using plain JavaScript?

1 个答案:

答案 0 :(得分:3)

尝试将函数reference作为事件处理程序传递,

spancomment.addEventListener('click', deleteComment, false);
function deleteComment(e) {
    this.parentNode.remove();
}

您也可以在父节点上使用.remove()

DEMO