我确实已经搜索并用Google搜索了此功能,并看到了remove函数,但是我所看到的所有示例都在不同的上下文中执行此操作。我只希望删除具有logout.html链接的li。我知道您不能将id分配给li元素,因此如何动态删除特定元素?
谢谢
<ul data-role="listview">
<li>
<a href="user_settings.html">
<img src="images/info/info-settings.png" width="30" height="30" class="ui-li-icon"/>
<h2>User Settings</h2>
</a>
</li>
<li>
**<a href="logout.html">
<img src="images/info/info-logout.png" width="30" height="30" class="ui-li-icon"/>
<h2>Logout</h2>
</a>**
</li>
<li>
<a href="http://someurl.com/store?app=ok" rel="external">
<img src="images/info/info-also-from.png" width="30" height="30" class="ui-li-icon"/>
<h2>Also from Us</h2>
</a>
</li>
<li>
<a href="about_us.html">
<img src="images/info/info-aboutUs.png" width="30" height="30" class="ui-li-icon"/>
<h2>About Us</h2>
</a>
</li>
<li>
<a href="about_us.html">
<img src="images/info/infsomeimage.png" width="30" height="30" class="ui-li-icon"/>
<h2>About Us</h2>
</a>
</li>
<li>
<a href="about_legal_info.html">
<img src="images/info/info-legalInfo.png" width="30" height="30" class="ui-li-icon"/>
<h2>Legal Info</h2>
</a>
</li>
<li>
<a href="about_international_dates.html">
<img src="images/info/info-international.png" width="30" height="30" class="ui-li-icon"/>
<h2>About International Dates</h2>
</a>
</li>
</ul>
最佳答案
没有什么能阻止您将id
添加到li
元素。这是完全有效的。但是,没有一个,您可以使用has
方法:
$("li").has("a[href='logout.html']").remove();
这将选择所有
li
元素,然后将该设置减少为仅包含与选择器匹配的元素的那些元素。它使用属性等于选择器将href
匹配到您的注销链接。您可以通过多种其他方式执行此操作。另一个示例是
:contains
选择器,它匹配元素或其任何后代中的文本(而不是选择器):$("li:contains('Logout')").remove();
显然,您将必须小心,因为在任何一种情况下都有多个与选择器匹配的元素,它们都将被删除。在这种情况下,您将必须以某种方式使选择器更加具体。