通过onclick直接删除<li>

Yan*_*Yan 2 html javascript

没有jc直接删除"li"的方法只需用onclick?

$go .="<li id=\"go_$id\"><a ondblclick=\"g('$id'); return false;\">$title</a>
             <a onclick=\"go('$id', 'g')\">(x)</a>
    </li>\n";
Run Code Online (Sandbox Code Playgroud)

我需要通过单击(x)来删除它,因此与我的其他函数(代码中的onclick函数)一起组合删除,以便"li"将消失onclick.

Bal*_*usC 10

使用Node.parentNode获得的父节点,并使用Node.removeChild()删除子节点.这是代码的自解释版本:

<li><a href="#" onclick="var li = this.parentNode; var ul = li.parentNode; ul.removeChild(li);">remove</a></li>
Run Code Online (Sandbox Code Playgroud)

这是一个更短的版本:

<li><a href="#" onclick="parentNode.parentNode.removeChild(parentNode)">remove</a></li>
Run Code Online (Sandbox Code Playgroud)

以下是如何将它与JS函数结合使用:

<li><a href="#" onclick="remove(this)">remove</a></li>
Run Code Online (Sandbox Code Playgroud)

function remove(link) { 
    link.parentNode.parentNode.removeChild(link.parentNode);
}
Run Code Online (Sandbox Code Playgroud)