[英]How to remove li from ul within a div
我有一个div,我在那里有一个ul,其中ul有一些li。
我只想找到一些文字并从ul中删除li。
假设例如:
<div id="div1">
<ul>
<li>Hello</li> <!--i need to remove this.-->
</ul>
</div>
var div = document.getElementById('div1'),
ul = div.getElementsByTagName('ul')[0],
li = ul.getElementsByTagName('li'),
len = li.length;
// Go backwards so that removing items has no effect
while (len--) {
if ( /Hello/.test(getText(li[len])) ) {
ul.removeChild(li[len]);
}
}
function getText(node) {
var s = '';
node = node.firstChild;
if ( node ) do {
if ( node.nodeType === 3 ) {
s += node.data;
}
if ( node.nodeType === 1 ) {
s += getText(node);
}
} while ( node = node.nextSibling );
return s;
}
使用jQuery,您可以这样做:
$("#div1 ul li:contains('Hello')").remove();
function removeLi()
{
var DIV = document.getElementById('div1');
var LI = DIV.getElementsByTagName('li');
LI[0].parentNode.removeChild(LI[0]); //remove the first li
//LI[1].parentNode.removeChild(LI[1]); //remove the second li
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.