我有如下表
<table class = "gridHover">
<thead>
<tr>
<td colspan="2">
<label for="searchbox">Search:</label>
<input type="text" id="searchbox" />
</td>
</tr>
</thead>
<tbody>
<tr>
<td>Something</td>
<td>More text</td>
</tr>
<tr>
<td>Lorem ipsum</td>
<td>blah?</td>
</tr>
<tr>
<td>Test ipsum</td>
<td>Test?</td>
</tr>
</tbody>
我有文本框,我在其中输入文本,然后突出显示表格中的文本。我的jQuery代码如下
$(document).ready(
function(){
$('#searchbox').keyup(
function(){
var searchText = $(this).val();
if (searchText.length > 0){
$('td:contains(' + searchText +')')
.addClass('searchResult');
$('td:not(:contains('+searchText+'))')
.removeClass('searchResult');
}
else if (searchText.length == 0) {
$('td.searchResult')
.removeClass('searchResult');
}
});
});
这是指向我的小提琴的链接,以使其更加清晰和复制问题。
如果您键入文本,您会看到它只会突出显示第二行(即奇数行)中的文本。这是因为我有如下的 css 规则
.gridHover tbody tr:nth-child(odd) td, .gridHover tbody tr:nth-child(odd) th {
background-color: #f9f9f9;
我想保留这个 css 规则,但仍然想突出显示与文本匹配的行。我该怎么做?