我想隐藏带有特定文本的表格行。该表位于DIV内。
<div id="TBL1" class="ShipEst">
<table align="right" style="width: 100%">
<tbody>
<tr>
<td align="left">
<b>Subtotal: </b>
</td>
<td align="center"> </td>
<td align="right">
<nobr>Rs 25.00</nobr>
</td>
</tr>
<tr>
<td align="left">
<b>Shipping: </b>
</td>
<td align="center"> </td>
<td align="right">
<nobr>Rs 0.00</nobr>
</td>
</tr>
</tbody>
</table>
</div>
我正在使用以下内容,但我不想循环这个条件。
$('table tr').each(function(){
var $this = $(this);
if ($this.text() == 'Shipping') {
$this.closest("tr").hide();
}
})
你能帮我解决这个问题吗?
答案 0 :(得分:1)
tr
的文字不等于Shipping
它是目标tr文本的一部分。
jQuery(function ($) {
$('#TBL1 table tr').has('td:first-child:contains("Shipping")').hide()
})
演示:Fiddle
但是使用:contains并不总是安全的,因为它也匹配部分文本,所以试试
jQuery(function ($) {
$('#TBL1 table tr').filter(function () {
return $.trim($(this).find('td:first-child').text()) == 'Shipping:'
}).hide()
})
演示:Fiddle
答案 1 :(得分:0)
您可以为行添加一个类。 该类用于所有行。 然后试试这个:
$("table").on("change",".shipping_row",function(){
$(this).closest("tr").hide();
})