删除没有'我没有id或类
Remove td that doesn't have an id or class
我有一个简单的问题,但我一辈子都无法解决。。。
我想从tr
(及其子级:类为"sch"的div
和id为"hlp"的a
)中删除整个td
。但是,td本身没有id、类或任何其他定义特征。
tr
的代码
<tr>
<td nowrap="">
<div class="sch">
<a class="btn" href="?ae=Dialog&t=AddressBook&ctx=1" title="Address Book">
<img src="http://placehold.it/35x35&text=1" alt="">Address Book</a>
</div>
</td>
<td nowrap="">
<div class="sch">
<a class="btn" onclick="return onClkOp();" href="?ae=Options&t=Messaging" title="Options">
<img src="http://placehold.it/35x35&text=2" alt="">Options</a>
</div>
</td>
<!-- ***** To be removed ***** -->
<td nowrap="">
<div class="sch">
<a id="hlp" class="btn" href="#" title="Help">
<img src="https://mail.kgs.org.uk/owa/8.3.298.1/themes/base/help.gif" alt="Help">
</a>
</div>
</td>
<!-- ********** -->
<td nowrap="">
<div class="sch">
<a id="lo" class="btn" href="#" title="Log Off">
<img class="noSrc" src="http://placehold.it/35x35&text=4" alt="">Log Off</a>
</div>
</td>
</tr>
我尝试过:
1.
$(document).ready(function() {
$("td").has(".sch").remove(); //This removes the entire row, which I don't want
});
2.
$(document).ready(function() {
$("td").has(".sch").has("#hlp").remove(); //This doesn't work
});
3.
$(document).ready(function() {
$(".sch").prev("td").remove();
$("#hlp").prev(".sch").remove(); //Doesn't work...
});
注意:我不能在我的代码中直接这样做,或者在有问题的td
中添加id
,以及为什么它是一个表,是因为我正在编辑我的网络邮件(OWA),并且不能物理更改代码:我正在使用浏览器扩展来添加Javascript和CSS,因此它必须是JS或jQuery(如果有办法的话,甚至是CSS)
您可以在has选择器中使用锚元素的id,只针对所需的td元素:
$('td:has(div.sch a#hlp)').remove();
工作演示
要删除的TD是第三个。因此,如果页面结构不变,可以使用:nth-child
选择器。
$(tableSelector + ' td:nth-child(3)').remove();
(您不希望从页面中的所有表中剪切出第三列)。
或者,您可以反向工作,并以a#hlp
为目标。然后使用.closest()
查找封闭的td
,并将其移除。
试试这个:
$(".sch").find('#hlp').closest('td').remove();
或者因为id是唯一的,所以你可以直接这样做:
$('#hlp').closest('td').remove();
$('.sch').find('#hlp').closest('td').remove();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<td nowrap="">
<div class="sch">
<a class="btn" href="?ae=Dialog&t=AddressBook&ctx=1" title="Address Book">
<img src="http://placehold.it/35x35&text=1" alt="">Address Book</a>
</div>
</td>
<td nowrap="">
<div class="sch">
<a class="btn" onclick="return onClkOp();" href="?ae=Options&t=Messaging" title="Options">
<img src="http://placehold.it/35x35&text=2" alt="">Options</a>
</div>
</td>
<!-- ***** To be removed ***** -->
<td nowrap="">
<div class="sch">
<a id="hlp" class="btn" href="#" title="Help">remove
<img src="https://mail.kgs.org.uk/owa/8.3.298.1/themes/base/help.gif" alt="Help">
</a>
</div>
</td>
<!-- ********** -->
<td nowrap="">
<div class="sch">
<a id="lo" class="btn" href="#" title="Log Off">
<img class="noSrc" src="http://placehold.it/35x35&text=4" alt="">Log Off</a>
</div>
</td>
</tr>
</table>
相关文章:
- 删除没有'我没有id或类
- <tspan>文本</tspan>如果没有定义id或类,如何删除文本
- 在jquery选择器中获取id或类名,使用PHP的regex
- 如果输入字段通过 ID 或类包含内容,则禁用输入字段
- 如何使用 imacros 填写没有 id 或类的表单字段
- 每个()具有多个ID或类
- jQuery:第一个孩子(没有 id 或类)
- JavaScript 输入标签未设置 ID 或类
- 如何获取没有下拉列表名称,ID或类的下拉选定值
- JQuery 附加不带 id 或类的标记
- 如何打开具有特定 ID 或类的彩盒
- 在没有 id 或类的单击时更改按钮值
- 将“结束”事件绑定到没有 ID 或类的声音播放
- .Net c#Web浏览器填充输入,不带id或类名
- 选择没有ID或类名的子项
- 使用id或类获取元素类型
- 从没有id或类的元素中获取数据
- 如何检查给定给HTML元素的id或类名是否被脚本或样式表使用
- 查找没有id或类的元素的子元素
- 如何选择一个没有id或类的嵌套元素?