任何方法只需用onclick直接删除“li”而不用javascript ?
$go .="<li id=\"go_$id\"><a ondblclick=\"g('$id'); return false;\">$title</a>
<a onclick=\"go('$id', 'g')\">(x)</a>
</li>\n";
我需要通过单击(x)来删除它,因此与我的其他功能(代码中的onclick函数)一起组合删除,以便“li”将在onclick上消失。
答案 0 :(得分:10)
使用Node.parentNode
获取父节点并使用Node.removeChild()
删除子节点。这是代码的不言自明的版本:
<li><a href="#" onclick="var li = this.parentNode; var ul = li.parentNode; ul.removeChild(li);">remove</a></li>
这是一个更短的版本:
<li><a href="#" onclick="parentNode.parentNode.removeChild(parentNode)">remove</a></li>
以下是如何将它与JS函数结合使用:
<li><a href="#" onclick="remove(this)">remove</a></li>
与
function remove(link) {
link.parentNode.parentNode.removeChild(link.parentNode);
}
答案 1 :(得分:2)
没有
不是没有JavaScript。
答案 2 :(得分:2)
如果您选择将内容与行为(HTML中的JavaScript)分开,那么这可以正常工作(使用jQuery):
$("li").click(function() { $(this).remove(); });
修改:
$("li a").click(function() { $(this).closest("li").remove(); });
但是,我建议使用更具体的选择器 - 例如.closeButton
答案 3 :(得分:0)
如果使用IE,您可以使用VBScript。
为了动态更改加载的页面,您必须使用这种或那种类型的客户端脚本(java,javascript,vbscript - 取决于浏览器和安装的插件)。
答案 4 :(得分:0)
function remove_item(selected_item) {
selected_item.parentNode.removeChild(selected_item);
}
li {
background: #ffe5e5;
padding: 20px;
margin: 15px;
list-style-type: decimal;
}
<ul id="list">
<li class="one" onclick="remove_item(this)">React</li>
<li class="one" onclick="remove_item(this)">Node.js</li>
<li class="one" onclick="remove_item(this)">Dart</li>
</ul>