jquery实现搜索表格
jQuery实现搜索表格
在网页应用程序中,表格是常见的数据展示形式。当数据量很大时,通常需要添加搜索功能来快速定位所需的数据。本文将介绍如何使用jQuery实现搜索表格的功能。
- HTML代码
首先,我们需要准备一些HTML代码,包括一个表格和一个输入框。我们的表格包含姓名、年龄、性别和国籍等信息。
<table id="myTable">
<thead>
<tr>
<th>姓名</th>
<th>年龄</th>
<th>性别</th>
<th>国籍</th>
</tr>
</thead>
<tbody>
<tr>
<td>张三</td>
<td>25</td>
<td>男</td>
<td>中国</td>
</tr>
<tr>
<td>李四</td>
<td>30</td>
<td>女</td>
<td>中国</td>
</tr>
<tr>
<td>John Doe</td>
<td>40</td>
<td>男</td>
<td>美国</td>
</tr>
<tr>
<td>Jane Doe</td>
<td>35</td>
<td>女</td>
<td>美国</td>
</tr>
</tbody>
</table>
<input type="text" id="myInput" placeholder="搜索">
- JavaScript代码
接下来,我们需要编写一些JavaScript代码。我们将使用jQuery库来简化代码编写过程。首先,我们需要获取输入框和表格元素。
var input = $("#myInput");
var table = $("#myTable");
然后,我们需要添加一个事件监听器,以便在输入框中输入时触发搜索功能。
input.on("keyup", function() {
var value = $(this).val().toLowerCase(); // 获取输入框的值,并将其转换为小写字母
table.find("tr").not(":first").filter(function() { // 找到表格中所有行(除第一行标题外)并过滤出与输入框中内容不匹配的行
$(this).toggle($(this).text().toLowerCase().indexOf(value) > -1) // toggle方法根据匹配结果显示或隐藏行
});
});
在这段代码中,我们使用了jQuery的方法on()
来添加事件监听器。当输入框触发keyup
事件时,代码将获取输入框的值并将其转换为小写字母。然后,我们使用jQuery的方法find()
和filter()
来搜索匹配的内容,并使用toggle()
方法显示或隐藏行。在这个例子中,我们使用了indexOf()
方法来检查文本是否包含搜索词。
- 完整代码
下面是完整的HTML和JavaScript代码:
<!DOCTYPE html>
<html>
<head>
<title>jQuery实现搜索表格</title>
<script class="lazy" data-src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
</head>
<body>
<input type="text" id="myInput" placeholder="搜索">
<table id="myTable">
<thead>
<tr>
<th>姓名</th>
<th>年龄</th>
<th>性别</th>
<th>国籍</th>
</tr>
</thead>
<tbody>
<tr>
<td>张三</td>
<td>25</td>
<td>男</td>
<td>中国</td>
</tr>
<tr>
<td>李四</td>
<td>30</td>
<td>女</td>
<td>中国</td>
</tr>
<tr>
<td>John Doe</td>
<td>40</td>
<td>男</td>
<td>美国</td>
</tr>
<tr>
<td>Jane Doe</td>
<td>35</td>
<td>女</td>
<td>美国</td>
</tr>
</tbody>
</table>
<script>
var input = $("#myInput");
var table = $("#myTable");
input.on("keyup", function() {
var value = $(this).val().toLowerCase();
table.find("tr").not(":first").filter(function() {
$(this).toggle($(this).text().toLowerCase().indexOf(value) > -1)
});
});
</script>
</body>
</html>
- 总结
使用jQuery实现搜索表格的功能比较简单,只需要编写少量的代码即可实现。通过使用jQuery的方法find()
、filter()
和toggle()
,我们可以轻松地搜索匹配的内容并显示或隐藏行。
以上就是jquery实现搜索表格的详细内容,更多请关注编程网其它相关文章!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341