需要使用文本搜索从表格外部过滤表格。例如,如果我在输入元素中写下一个单词,我想得到表中包含该单词的所有行。
答案 0 :(得分:1)
将此代码放入" head"页面部分:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script>
$(document).ready(function () {
$("#searchInput").keyup(function () {
var val = $(this).val();
$("#searchTable tr td").each(function (i) {
var content = $(this).text();
if (content.toLowerCase().indexOf(val) == -1) {
$(this).parent().hide();
} else {
$(this).parent().show();
}
});
});
});
</script>
让我们假设您的HTML看起来像:
<div>
<input type="text" id="searchInput" />
<table id="searchTable">
<tr>
<td>test</td>
</tr>
<tr>
<td>Latest</td>
</tr>
<tr>
<td>Mest</td>
</tr>
<tr>
<td>test</td>
</tr>
<tr>
<td>Best</td>
</tr>
<tr>
<td>chest</td>
</tr>
<tr>
<td>test</td>
</tr>
<tr>
<td>Waste</td>
</tr>
<tr>
<td>Test</td>
</tr>
</table>
</div>
答案 1 :(得分:0)
答案 2 :(得分:0)
答案 3 :(得分:0)
也许这会对你有帮助。
<input type="text" id="searchInput" />
<table id="searchTable">
<td>test</td>
<td>test1</td>
<td>test1</td>
<td>test2</td>
<td>test</td>
<td>test3</td>
<td>test</td>
</table>
<script>
$("#searchInput").keyup(function() {
var val = $(this).val();
$("#searchTable td").each(function(i) {
var content = $(this).html();
if(content.toLowerCase().indexOf(val) == -1) {
$(this).hide();
} else {
$(this).show();
}
});
});
</script>
干杯!
答案 4 :(得分:0)
这会更好用:
$("#txtFilter").keyup(function () {
var val = $(this).val().toLocaleLowerCase();
$("tr", table).each(function (i) {
var content = '';
$(this).find('td').each(function (j) {
content += '' + $(this).text().trim();
});
if (content.toLowerCase().indexOf(val) == -1) {
$(this).hide();
} else {
$(this).show();
}
});
});