html表格搜索功能,如何在HTML表格上执行实时搜索和过滤

小编典典

我创建了这些示例。

简单的indexOf搜索

var $rows = $('#table tr');

$('#search').keyup(function() {

var val = $.trim($(this).val()).replace(/ +/g, ' ').toLowerCase();

$rows.show().filter(function() {

var text = $(this).text().replace(/\s+/g, ' ').toLowerCase();

return !~text.indexOf(val);

}).hide();

});

正则表达式搜索

使用正则表达式的更高级功能将使您可以按任意顺序搜索行中的单词。它将工作一样,如果你键入apple green或green apple:

var $rows = $('#table tr');

$('#search').keyup(function() {

var val = '^(?=.*\\b' + $.trim($(this).val()).split(/\s+/).join('\\b)(?=.*\\b') + ').*$',

reg = RegExp(val, 'i'),

text;

$rows.show().filter(function() {

text = $(this).text().replace(/\s+/g, ' ');

return !reg.test(text);

}).hide();

});

Debounce

在通过搜索多行和多列来实现表过滤时,考虑性能和搜索速度/优化非常重要。简而言之,您不必在每个按键上都运行搜索功能,这是没有必要的。为了防止过滤运行得太频繁,您应该对它进行反跳处理。上面的代码示例将变为:

$('#search').keyup(debounce(function() {

var val = $.trim($(this).val()).replace(/ +/g, ' ').toLowerCase();

// etc...

}, 300));

您可以选择任何反跳实现,例如从Lodash_.debounce中进行选择,也可以使用非常简单的方式

2020-05-01

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
HTML表格中实现增删改查功能可以通过前端技术来完成。 首先,为了实现增删改查,我们需要使用HTML的form标签来包裹表格,并为每个操作添加相应的按钮或链接。比如,对于增加操作,可以在表格上方添加一个"添加"按钮,点击后弹出一个表单,用户可以在表单中输入需要添加的数据,然后提交表单。对于修改操作,可以在每一行的最后一列添加一个"编辑"按钮,点击后同样弹出一个表单,用户可以修改对应行的数据,然后提交表单。对于删除操作,可以在每一行的最后一列添加一个"删除"按钮,点击后弹出一个确认对话框,用户确认后执行删除操作。 其次,为了实现数据的增删改查,我们可以使用JavaScript来处理表单的提交和按钮的点击事件。当用户点击"添加"按钮时,可以通过JavaScript动态创建一个新的表格行,并将用户输入的数据插入到表格中。当用户点击"编辑"按钮时,可以将对应行的数据填充到表单中,用户可以修改数据后再次提交。当用户点击"删除"按钮时,可以通过JavaScript动态移除对应的表格行。 此外,为了方便用户进行数据的查询,可以在页面上添加一个搜索框,用户可以输入关键字并点击搜索按钮,通过JavaScript过滤表格中的数据,只显示符合条件的行。 综上所述,通过使用HTML的form标签、按钮和表格以及JavaScript的事件处理和DOM操作,我们可以实现HTML表格的增删改查功能

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值