我想为我的<ul>
中的每个<li>
添加一个x按钮。此x(关闭)按钮将从<ul>
中删除单个<li>
。如何使用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>
发布于 2011-10-08 12:15:50
Event delegation.选择该列表,然后要求其侦听.closeButton
%s上的单击事件。然后删除li
或span
的父项。
$("#list_a").delegate(".closeButton", "click", function() {
$(this).parent().remove();
});
发布于 2011-10-08 12:10:44
// 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>
jsFiddle
发布于 2011-10-08 17:48:38
我还会用jQuery动态创建关闭按钮。
$('#list_a li').each(function(){
$(this).append($('<span/>',{html:'X',class:'closeButton'}).click(function(){
$(this).parent().remove();
}));
});
https://stackoverflow.com/questions/7694762
复制相似问题