在示例中:
<ul>
<li>text <span>more text</span></li>
</ul>
我想<li>
通过单击其中的内容<span>
来删除,<li>
例如:
$(this).parent().remove()
什么被认为parent()
是 a <span>
in an <li>
?
解决方案
上面的代码有效,因此似乎确实如此(即,<li>
在这种情况下, the 是 的父级<span>
)。
在示例中:
<ul>
<li>text <span>more text</span></li>
</ul>
我想<li>
通过单击其中的内容<span>
来删除,<li>
例如:
$(this).parent().remove()
什么被认为parent()
是 a <span>
in an <li>
?
解决方案
上面的代码有效,因此似乎确实如此(即,<li>
在这种情况下, the 是 的父级<span>
)。
你的代码是这样的
<ul>
<li>text
<span class='delete_link'>more text</span>
</li>
</ul>
这<li>
是 的父级<span>
。所以
$(".delete_link").click(function() {
$(this).parent().remove()
});
然后结果为空<ul>
<ul>
</ul>
没有<li>
。
跨度的父级是包含它的 li:-
这是为此工作的小提琴:-
<ul>
<li>text <span id="my-span">more text</span></li>
</ul>
这是获取父级,然后将其删除。
console.log($("#my-span").parent());
$("#my-span").parent().remove();
由于li
是 的父级span
,因此您执行的代码将删除li
及其子级 ( span
)。
如果您想保留span
元素。
尝试这个
var s = $('span').detach(); // detach it
$('ul').append(s); // append it to ul
$('li').remove(); // then remove the li
你的父母是LI _
<ul>
<li>text <span id=span>more text</span></li>
</ul>
$("#span").parent().remove();
将删除span的父li及其所有孩子
所以如果你有
<ul>
<li>
<span id=span>more text</span>
<span>more text</span>
<span>more text</span>
</li>
</ul>
申请:
$("#span").parent().remove();
将输出:
<ul></ul>