【发布时间】:2014-05-18 05:52:26
【问题描述】:
我正在使用以下几行来搜索表的行,以检查 TD 是否包含我的 searchTerm 到目前为止工作正常。
有没有一种方法可以在这里按列搜索而不是按行搜索? 原因是在我的情况下,一行可以包含多次相同的值,但不是我需要的列。
我的表有一个标准的结构,包括 thead 和 tbody,如果需要,我可以添加一个 colgroup 或类。
我的 JS:
var searchTerm = "myText"
var result = new Array();
$('#myTable tbody tr').each(function() {
result.push(+($(this).find('td:contains(' + searchTerm + ')').next('td').text()));
});
alert(result);
我的桌子:
<table id="myTable">
<thead>
<tr>
<th class="myHeader">Cat 1</th>
<th>Vol 1</th>
<th class="myHeader">Cat 2</th>
<th>Vol 2</th>
<th class="myHeader">Cat 3</th>
<th>Vol 3</th>
//...
</tr>
</thead>
<tbody>
<tr>
<td>item1</td><td>8</td><td>item2</td><td>7</td>
</tr>
<tr>
<td>item3</td><td>5</td><td>item2</td><td>7</td>
</tr>
<tr>
<td>item2</td><td>1</td><td>item1</td><td>5</td><td>item3</td><td>3</td>
</tr>
//...
</tbody>
</table>
提前非常感谢蒂姆。
【问题讨论】:
-
使用
jQuery.index()。 -
谢谢。我将如何在这里应用它以便搜索所有列? (我的表有一组固定的 13 列。)