[英]Get all elements that does not contain data attribute
我有一個看起來像這樣的表:
<table>
<tr>
<td data-col="firstname">Robert</td>
<td data-col="middlename">E</td>
<td data-col="lastname">McIntosh</td>
<td data-col="email">example@gmail.com</td>
<td data-col="title" data-id="123456">Programmer</td>
</tr>
<tr>
<td data-col="firstname">John</td>
<td data-col="middlename">M</td>
<td data-col="lastname">Doe</td>
<td data-col="email">j.m.doe@gmail.com</td>
<td data-col="title" data-id="456789">IT Manager</td>
</tr>
<tr>
<td data-col="firstname">Sue</td>
<td data-col="middlename">L</td>
<td data-col="lastname">Merser</td>
<td data-col="email">s.l.merser@gmail.com</td>
<td data-col="title" data-id="789123">Hates Her Job</td>
</tr>
</table>
我想向所有不包含等於123456
的數據屬性id的td
元素添加一個標記為title_hide
的類。
我正在嘗試的Javascript:
$('table tr td:not([data-id="123456"])').closest('tr').addClass('title_hide');
使用:not()
選擇器:
$('td:not([data-id="123456"])').addClass('title_hide');
更新:根據您的更新,您似乎正在嘗試將類添加到<tr>
元素中,該元素內部沒有<td data-id="123456">
。 在這種情況下,您可以使用以下方法:
$('tr:not(:has(td[data-id="123456"]))').addClass('title_hide');
演示: http : //jsfiddle.net/RFwJg/
你可以做:
$("table tr td:not([data-id=123456])").addClass("title_hide");
嘗試不()
$("td:not('[data-col]')").addClass('title_hide');
<script type="text/javascript">
jQuery(document).ready(function(){
jQuery('td').not('td[data-id="123456"]').addClass('title_hide');
});
</script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.