我正在使用visualforce页面。下面给出了在执行顶点代码后生成的HTML文件代码部分。
<table class="detailList" cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr></tr>
<tr>
<td class="labelCol"></td>
<td class="dataCol col02"> userName <a href="www.example.com"></a></td>
<td class="labelCol"></td> <td class="dataCol"></td>
</tr>
<tr>
<td class="labelCol"></td>
<td class="dataCol col02"><a href="mailto:xyz@gmail.com"></a></td>
<td class="labelCol"></td>
<td class="dataCol"></td>
</tr>
</table>
我想从此页面中删除userName锚标记,该标记在第6行编码,其类名为“dataCol col02”,并且在第11行还有另一个具有相同类名“dataCol col02”的锚标记。请记住,这个html是通过执行APEX代码生成的。请指导我如何才能删除第6行的锚标记。
答案 0 :(得分:2)
您可以使用find
,first
和remove
方法。
$('.dataCol.col02').first().find('a').remove();
如果您要删除userName
textNode:
$('.dataCol.col02').first().contents().filter(function () {
return this.nodeType === 3;
}).remove();
删除所有内容:
$('.dataCol.col02').first().empty();
答案 1 :(得分:1)
您可以执行以下操作:
var anchor = document.getElementsByClassName("col02")[0] //select first matching 'col02'
.getElementsByTagName("a")[0] //select first matching <a>
anchor.parentNode.remove(anchor)
您可以在此处看到它:jsfiddle
这假设您当然只想从第一个实例中删除class ='col02',因此不是非常强大。我想它生成的事实意味着你不能放入更有用的class / id属性?
与其他答案不同,它不依赖于jquery:)
答案 2 :(得分:1)
答案 3 :(得分:0)
试试这个 -
$('td.dataCol.col02').eq(0).find('a').remove();
或者如果你想清空那个td -
$('td.dataCol.col02').eq(0).empty();
答案 4 :(得分:0)
$("table .dataCol.col02:first a").remove();
答案 5 :(得分:0)
试试这个:
$("tr:eq(1) > td:eq(1)").remove()
答案 6 :(得分:0)