Javascript 如何根据属性值删除DOM元素
我有来自Sharepoint的HTML代码,我想知道是否可以仅基于“text”属性删除这个特定的DOM元素Javascript 如何根据属性值删除DOM元素,javascript,jquery,Javascript,Jquery,我有来自Sharepoint的HTML代码,我想知道是否可以仅基于“text”属性删除这个特定的DOM元素 <ie:menuitem menugroupid="200" text="new docs view" onmenuclick="window.location = '/some link/';" type="option" id="zz36_View1"></ie:menuitem> 使用Firebug,我可以简单地右键单击上面的行,然后单击DeleteEl
<ie:menuitem menugroupid="200" text="new docs view" onmenuclick="window.location = '/some link/';" type="option" id="zz36_View1"></ie:menuitem>
使用Firebug,我可以简单地右键单击上面的行,然后单击DeleteElement。如何使用Javascript w/Jquery实现这一点
下面是上面这一行的来历:
<span style="display:none">
<menu compactmode="true" id="zz34_ViewSelectorMenu" type="ServerMenu">
<ie:menuitem menugroupid="100" text="All Documents" onmenuclick="window.location = '/some link/';" type="option" id="zz35_DefaultView"></ie:menuitem>
<ie:menuitem menugroupid="200" text="new docs view" onmenuclick="window.location = '/some link/';" type="option" id="zz36_View1"></ie:menuitem>
<ie:menuitem menugroupid="300" text="Explorer View" onmenuclick="window.location = '/some link/';" type="option" id="zz37_View2"></ie:menuitem>
</menu>
</span>
我试过这样的方法:
<script language="Javascript" src="http://code.jquery.com/jquery-1.5.2.min.js"></script>
<script language="Javascript">
$(document).ready(function() {
$('ie:menuitem[text*="new docs view"]').remove();
});
</script>
$(文档).ready(函数(){
$('ie:menuitem[text*=“新建文档视图”]”)。删除();
});
但它并没有真正起作用
$('ie:menuitem[text*="new docs view"]')
ie:menuitem不是标准的HTML元素。因此jQuery很可能将:menuitem
解释为。这可能是问题的根源。试试看
$('ie\\:menuitem[text*="new docs view"]').remove();
//or
$('menuitem[text*="new docs view"]').remove();
我只是猜测一下,因为我真的不知道jQuery在名称空间中的效果如何。
$('ie\\\:menuitem[text*=“newdocs view”])。remove()
可能会起作用。这就是你可以做的。假设你的菜单是第一个孩子:(肮脏的方式)
jsiddle:您必须转义选择器中的:
:
$("ie\\:menuitem[type='option'][text='All Documents']").remove();
显示在此处工作:
$("ie\\:menuitem[type='option'][text='All Documents']").remove();