[英]jquery select all rows not containing specific text
我想使用jQuery選擇表中不包含特定文本的td
所有行。
我可以選擇以下行:
var x = $('td:contains("text"):parent'); //muliple td's in each tr
我將如何使用:not
選擇器來反轉選擇?
編輯:我不認為上面的代碼行是真的准確。 這是我最初的代碼:
var x = $('td:contains("text")).parent(); //muliple td's in each tr
當我嘗試反轉選擇時,我得到所有行,因為它們碰巧都包含不包含文本的td。
情況1:選擇所有TD中包含文本“我的文本”的所有TR
我不會太依賴於偽。 嘗試使用過濾器進行以下操作,(內部偽操作無論如何都會這樣做)
$('tr').filter(function () {
return $(this).find('td').filter(function () {
return $(this).text().indexOf('myText') == -1;
}).length;
}); //would return all tr without text 'myText'
演示: http : //jsfiddle.net/dWuzA/
情況2:選擇所有TD中包含文本“我的文本”的所有TR
@squint在評論中提出了非常好的觀點
因此,如果要選擇包含的所有TR在任何TD中都沒有特定文本,則可以將條件取反。請參見下文,
演示: http : //jsfiddle.net/dWuzA/1/
$(function () {
$('tr').filter(function () {
return !$(this).find('td').filter(function () {
return $(this).text().indexOf('22') != -1;
}).length;
}).addClass('highlight');
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.