使用 href 中的 jquery 从 ul 中删除 li
Remove li from ul with jquery from href
我想删除所有 <li>
行,但我删除了标签 <a>
。
我只是尝试 $(this).closest('li').remove()
但不工作也尝试 li.remove()
。我有这个:
$("#demo").append("<li class='list-group-item'>" + result.Num+ " - " + result.Desc+ "<a onclick='$(this).remove()' href='#'class='pull-right'> Delete</a> </li>");
解决你的问题的正确方法是使用$(this).closest('li').remove()
遍历到最近的父li
到被点击的a
并移除它。请注意,您需要对字符串中的引号进行转义,这是我能理解为什么您尝试的方法不起作用的唯一原因。
$("#demo").append('<li class="list-group-item">' + result.Num + ' - ' + result.Desc + '<a onclick="$(this).closest(\'li\').remove()" href="#" class="pull-right">Delete</a></li>');
然而,更好的方法是使用委托事件处理程序而不是过时的 on*
事件属性,如下所示:
var $demo = $("#demo").append('<li class="list-group-item">' + result.Num + ' - ' + result.Desc + '<a href="#" class="pull-right">Delete</a></li>');
$demo.on('click', '.list-group-item a', function(e) {
e.preventDefault();
$(this).closest('li').remove();
});
我想删除所有 <li>
行,但我删除了标签 <a>
。
我只是尝试 $(this).closest('li').remove()
但不工作也尝试 li.remove()
。我有这个:
$("#demo").append("<li class='list-group-item'>" + result.Num+ " - " + result.Desc+ "<a onclick='$(this).remove()' href='#'class='pull-right'> Delete</a> </li>");
解决你的问题的正确方法是使用$(this).closest('li').remove()
遍历到最近的父li
到被点击的a
并移除它。请注意,您需要对字符串中的引号进行转义,这是我能理解为什么您尝试的方法不起作用的唯一原因。
$("#demo").append('<li class="list-group-item">' + result.Num + ' - ' + result.Desc + '<a onclick="$(this).closest(\'li\').remove()" href="#" class="pull-right">Delete</a></li>');
然而,更好的方法是使用委托事件处理程序而不是过时的 on*
事件属性,如下所示:
var $demo = $("#demo").append('<li class="list-group-item">' + result.Num + ' - ' + result.Desc + '<a href="#" class="pull-right">Delete</a></li>');
$demo.on('click', '.list-group-item a', function(e) {
e.preventDefault();
$(this).closest('li').remove();
});