0

0

bootstrap怎么给表格添加搜索过滤功能

月夜之吻

月夜之吻

发布时间:2026-03-18 16:20:03

|

527人浏览过

|

来源于php中文网

原创

DataTables 是实现表格搜索的首选插件,需正确引入 jQuery 和 DataTables 文件(含 Bootstrap 适配版),配置 searching: true、dom: 'rt' 及 language.search 自定义提示;默认区分大小写且中文需完整匹配,应设 search: { caseInsensitive: true } 并确保 UTF-8 编码;禁用搜索推荐初始化设 searching: false,服务端模式下前端配置仅控制搜索框显隐。

用 DataTables 插件实现表格搜索,不是 Bootstrap 自带功能

bootstrap 本身不提供表格搜索过滤能力,table 只是样式容器。真要加搜索,得靠第三方插件,最常用、最稳的是 datatables。它和 bootstrap 的 css 兼容性好,开箱即用,别想着自己手写过滤逻辑——容易漏空格、大小写、中文分词,还影响性能。

常见错误现象:$(‘#myTable’).DataTable() 报错 “DataTable is not a function”,多半是没引入 JS 文件,或引入顺序错了(jQuery 必须在 DataTables 前)。

  • 必须先加载 jQuery,再加载 DataTables JS(jquery.dataTables.min.js)和 CSS(jquery.dataTables.min.css
  • 如果用 Bootstrap 5,额外加 dataTables.bootstrap5.min.cssdataTables.bootstrap5.min.js,否则搜索框样式错位
  • table 必须有 id,且初始化时传入选择器,比如 $('#user-table'),不能只用 class

初始化时开启搜索并控制搜索框位置

默认搜索框会出现在表格上方右侧,但经常被误以为“没生效”——其实它藏在右上角,很小。可以通过配置显式启用,并挪到更醒目的位置。

使用场景:后台列表页、用户管理表、日志查看页,需要快速定位某行数据。

  • 设置 searching: true(默认就是 true,但显式写出来防误关)
  • dom 参数调整布局,比如 'rt' 把搜索框 f 提到顶部单独一行
  • language: { search: '查找:' } 改提示文字,避免英文残留
$('#order-table').DataTable({
  searching: true,
  dom: '<"top"f>rt<"bottom"lip><"clear">',
  language: { search: '查找:' }
});

搜索不区分大小写 + 支持中文模糊匹配

默认 DataTables 搜索是区分大小写的,输入 admin 找不到 Admin;对中文也只支持完整字匹配,搜“张”找不到“张三”。这不是 bug,是默认行为,得手动关掉大小写敏感,并确认编码没问题。

参数差异:caseInsensitive 不是配置项,真正起作用的是 $.fn.dataTable.ext.search 或初始化时的 search.caseInsensitive(v1.10.24+ 支持)。

Riffo
Riffo

Riffo是一个免费的文件智能命名和管理工具

下载
  • 新版推荐直接设 search: { caseInsensitive: true }(注意是 search 对象下的子字段)
  • 确保 HTML 页面声明了 <meta charset="UTF-8">,否则中文搜索可能乱码或失效
  • 不需要额外写正则或监听 input —— DataTables 内部已做防抖,连续输入不会频繁重绘

禁用搜索或动态开关搜索框

有些表格字段敏感(如含密码列),或者当前视图不该允许搜索(如弹窗内嵌小表),就得关掉搜索。但别用 display: none 隐藏 DOM,那只是视觉隐藏,搜索逻辑还在运行,反而浪费资源。

性能影响:关闭搜索能减少事件监听和字符串比对,对超大表(>5000 行)有明显响应提升。

  • 初始化时设 searching: false,整个搜索功能就彻底停用
  • 运行时想开关,调用 table.settings()[0].oFeatures.bFilter = false 然后 table.draw(),但不推荐——易出错
  • 更安全的做法:销毁再重建,table.destroy(); $('#t').DataTable({ searching: false })

容易被忽略的一点:如果表格用了 serverSide: true(服务端搜索),前端的 searching 设置只是控制是否显示搜索框,实际过滤仍由后端完成。这时候改前端配置不会影响结果,得同步检查后端接口是否真接收了 search[value] 参数。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
python是前端还是后端
python是前端还是后端

Python属于前端也属于后端,其灵活性和丰富的生态系统使得开发人员能够在不同的领域中灵活运用。本专题为大家提供python相关的文章、下载、课程内容,供大家免费下载体验。

202

2023.08.11

前端如何实现即时通讯
前端如何实现即时通讯

实现即时通讯的方法有WebSocket、Long Polling、Server-Sent Events、WebRTC等等。详细介绍:1、WebSocket,它可以在客户端和服务器之间建立持久连接,实现实时的双向通信,前端可以使用 WebSocket API来创建WebSocket连接,并通过发送和接收消息来实现即时通讯;2、Long Polling,是一种模拟实时通信的技术等等。

275

2023.10.09

前端和后端的区别
前端和后端的区别

前端关注的是用户界面的设计和交互,而后端则注重数据处理和逻辑控制。想了解更多前端后端的相关内容,可以阅读本专题下面的文章。

413

2024.03.19

php和前端的关联介绍
php和前端的关联介绍

php既可以作为前端语言,也可以作为后端语言。想了解更多php和前端的相关内容,可以阅读本专题下面的文章。

233

2024.03.22

前端外包工作内容有哪些
前端外包工作内容有哪些

前端外包工作内容包括:1. 网站和应用程序开发;2. 用户界面和交互设计;3. 用户体验优化;4. 设计和视觉开发;5. 跨浏览器兼容性;6. 性能优化;7. 维护和更新;8. 项目管理和沟通。想了解更多前端的相关内容,可以阅读本专题下面的文章。

122

2024.05.22

jquery插件有哪些
jquery插件有哪些

jquery插件有jQuery UI、jQuery Validate、jQuery DataTables、jQuery Slick、jQuery LazyLoad、jQuery Countdown、jQuery Lightbox、jQuery FullCalendar、jQuery Chosen和jQuery EasyUI等。本专题为大家提供jquery插件相关的文章、下载、课程内容,供大家免费下载体验。

156

2023.09.12

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

337

2023.10.13

jquery删除元素的方法
jquery删除元素的方法

jquery可以通过.remove() 方法、 .detach() 方法、.empty() 方法、.unwrap() 方法、.replaceWith() 方法、.html('') 方法和.hide() 方法来删除元素。更多关于jquery相关的问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

408

2023.11.10

Python WebSocket实时通信与异步服务开发实践
Python WebSocket实时通信与异步服务开发实践

本专题聚焦 Python 在实时通信场景中的开发实践,系统讲解 WebSocket 协议原理、长连接管理、消息推送机制以及异步服务架构设计。内容包括客户端与服务端通信实现、连接稳定性优化、消息队列集成及高并发处理策略。通过完整案例,帮助开发者构建高效稳定的实时通信系统,适用于聊天应用、实时数据推送等场景。

7

2026.03.18

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Bootstrap 5教程
Bootstrap 5教程

共46课时 | 3.7万人学习

HTML+CSS基础与实战
HTML+CSS基础与实战

共132课时 | 12.8万人学习

JS进阶与BootStrap学习
JS进阶与BootStrap学习

共39课时 | 3.4万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号