用layui实现数据表格table搜索静态数据的功能
时间: 2024-01-13 18:03:45 浏览: 166
Layui实现数据表格默认全部显示(不要分页)
您可以使用layui的table组件提供的搜索功能来实现这个功能。您需要先定义一个table实例,用静态数组填充数据,然后调用layui的table.render()将数据渲染到表格中。在render()方法中,您可以使用toolbar属性来定义搜索框,然后在search()方法中实现搜索功能。以下是一个简单的示例代码:
HTML代码:
```
<table id="myTable" lay-filter="myTable"></table>
```
JavaScript代码:
```
var data = [
{ id: 1, name: '张三', age: 18 },
{ id: 2, name: '李四', age: 20 },
{ id: 3, name: '王五', age: 22 },
{ id: 4, name: '赵六', age: 24 }
];
layui.use('table', function(){
var table = layui.table;
// 填充数据
table.render({
elem: '#myTable',
data: data,
toolbar: '#toolbar',
cols: [
[
{ field: 'id', title: 'ID', width: 80 },
{ field: 'name', title: '姓名', width: 120 },
{ field: 'age', title: '年龄', width: 80 }
]
],
page: true
});
// 搜索功能
table.on('toolbar(myTable)', function(obj){
if(obj.event == 'search'){
var keyword = $('#search').val();
var result = [];
for(var i=0; i<data.length; i++){
if(data[i].name.indexOf(keyword) >= 0){
result.push(data[i]);
}
}
table.reload('myTable', { data: result });
}
});
});
```
在上面的代码中,定义了一个静态数据数组data。在使用table.render()将数据填充到表格中。在cols属性中定义表头,page属性启用分页功能。在toolbar属性中定义了一个搜索框。在table.on()方法中监听工具栏事件,如果点击了“搜索”按钮,就获取搜索关键字,并遍历数据数组,找到包含关键字的项,组成一个新的数组,然后使用table.reload()重新加载表格数据。
阅读全文