我想为<li>
中的每个<ul>
添加一个x按钮。此x(关闭)按钮将从<li>
中删除该<ul>
个人。如何使用jQuery创建一个使this
删除当前项的单个函数?
继承我的HTML示例:
<ul id="list_a">
<li value="1">Red <span class="closeButton">X</span></li>
<li value="2">Orange <span class="closeButton">X</span></li>
<li value="3">Green <span class="closeButton">X</span></li>
</ul>
编辑:添加了关闭按钮<span>
答案 0 :(得分:1)
// Use live to bind click event to each element with closeButton class and remove it
$('.closeButton').live('click', function(){
$(this).parent().remove();
});
<ul id="list_a">
<li value="1">Red <span class="closeButton">X</span></li>
<li value="2">Orange <span class="closeButton">X</span></li>
<li value="3">Green <span class="closeButton">X</span></li>
</ul>
答案 1 :(得分:1)
Event delegation.选择列表,然后让它听取.closeButton
上的点击事件。然后移除li
或span
的父级。
$("#list_a").delegate(".closeButton", "click", function() {
$(this).parent().remove();
});
答案 2 :(得分:0)
我还会使用jQuery动态创建关闭按钮。
$('#list_a li').each(function(){
$(this).append($('<span/>',{html:'X',class:'closeButton'}).click(function(){
$(this).parent().remove();
}));
});