使用JQuery删除LI的问题

时间:2013-01-25 11:51:56

标签: jquery html-lists

我使用<ul><li>

制作导航栏

我的第一个数据如(html)

  <ul id="menu_xml_txt">
     <li id="1"> Root Catalog </li>
 </ul>

点击Root Catalog时,它会将所有<li>替换为

<ul id="menu_xml_txt">
 <li id="2">Apparel</li> 
 <li id="3">Accessories</li>
</ul>

等等。当您点击它时,它将被更改并替换为所有新的<li>

当您点击<li>时,它会添加到div=reg_navlist我正在使用.append的jquery函数

然后它会

<ul id="reg_navlist">
 <li id="1">Root Catalog</li>  
 <li id="3">Accessories</li> 
 <li id="45">bla bla..</li> 
 <li id="80">bla bla..</li> 
 <li id="95">bla bla..</li> 
 <li id="115">bla bla..</li> 
 </ul>

我想只删除我点击过的那些<li>元素&amp;李而来之后 例如,如果我点击了<li id=45>,那么id = 45和id = 80,id = 95,id = 115将被删除而不是id = 1和id = 3

我试过这个jQuery代码

 j('#region_navlist li').live('click', function() {
    var cliked_id = j(this).attr('id');
    j('#region_nav li:not(:first)').remove();
});

但它删除了所有<li>而不是第一个

1 个答案:

答案 0 :(得分:5)

做的:

j('#region_navlist li').on('click', function() {
    j(this).nextAll().andSelf().remove();
});

请参阅:andSelf()nextAll()

Note:- .live() is deprecated you use .on() if version 1.7