我有以下代码片段,我无权访问标记以添加id / classes。
我需要做的是删除任何具有特定值的复选框。有大约10个值,如果任何复选框具有这些值,则需要从标记中删除它们。除此之外,我还需要在此复选框输入之前的同一时间删除其关联的文本“添加”。我如何仅针对这些复选框输入和关联的“添加”文本进行删除?
编辑:让我们说值是1234,abcd,efgh,ijkl,54330,ll64等......我需要检查这些和其他值。
<table width="100%"cellpadding="0" cellspacing="0"><tr>
<td valign="top">
<b><FONT class="pricecolorsmall colors_productprice">Sale Price: £4.95 </font></b>
<br /><div class="337">Add</div> <input type="checkbox" name="ProductCode2"
value="480GCFD">
</td>
</tr></table>
</td>
<td valign="top" width="25%">
<table width="100%"cellpadding="0" cellspacing="0"><tr>
<td valign="top">
<b><font class="pricecolorsmall colors_productprice"><font class="smalltext colors_text"><b>Sale Price </b></font> £1.00 </font></b>
<br /><div class="337">Add</div> <input type="checkbox" name="ProductCode2"
value="LL64">
</td>
</tr></table>
</td>
<td valign="top" width="25%">
<table width="100%"cellpadding="0" cellspacing="0"><tr>
<td valign="top">
<b><FONT class="pricecolorsmall colors_productprice">Sale Price: £8.50 </font></b>
<br /><div class="337">Add</div> <input type="checkbox" name="ProductCode2"
value="54330">
</td>
</tr></table>
</td>
<td valign="top" width="25%">
<table width="100%"cellpadding="0" cellspacing="0"><tr>
<td valign="top">
<b><FONT class="pricecolorsmall colors_productprice">Sale Price: £4.95 </font></b>
<br /><div class="337">Add</div> <input type="checkbox" name="ProductCode2"
value="460GCRS">
</td>
</tr></table>
答案 0 :(得分:3)
您可以将要删除的值放在数组中,并过滤这些值。
var valuesToRemove = ["460GCRS","54330","480GCFD"];
$('input').filter(function() {
return $.inArray(this.value, valuesToRemove) > -1;
}).prev().remove().end().remove();
以下示例删除了您发布的4个输入中的3个:http://jsfiddle.net/3aPLU/
答案 1 :(得分:0)
此代码段会删除名称为<input>
的所有ProductCode2
个元素。如果这不是你需要的,请告诉我。
$(function() {
$('input[name="ProductCode2"]').each(function() {
$(this).prev('div').remove();
$(this).remove();
});
});
答案 2 :(得分:0)
要按值查找复选框,您可以使用jQuery,然后调用remove
:
$('input[value="ValueYouAreLookingFor"]').remove();
要在上述调用之前删除div
,您可以执行相同的操作,但后退并删除div
:
$('input[value="ValueYouAreLookingFor"]').prev('div').remove();