vue+elementUI实现表格关键字筛选高亮
程序员文章站
2023-12-01 21:30:28
本文实例为大家分享了vue elementui表格关键字筛选高亮的具体代码,供大家参考,具体内容如下
代码:
本文实例为大家分享了vue elementui表格关键字筛选高亮的具体代码,供大家参考,具体内容如下
代码:
<template> <div class=""> <div class="top"> <!-- 筛选 --> <div class="screen"> <div style="width:30%">筛选:</div> <el-input type="search" v-model="search" style="width:70%" placeholder="请输入关键字"></el-input> </div> </div> <!-- 表格 --> <div class="table"> <el-table :data="tables" style="width: 100%" max-height=500> <!-- 地址 --> <el-table-column label="时间"> <template slot-scope="scope"> <span class="col-cont" v-html="showdate(scope.row.date)" ></span> </template> </el-table-column> <!-- 用户名 --> <el-table-column label="用户名"> <template slot-scope="scope"> <span class="col-cont" v-html="showdate(scope.row.name)" ></span> </template> </el-table-column> <!-- 地址 --> <el-table-column label="地址"> <template slot-scope="scope"> <span class="col-cont" v-html="showdate(scope.row.address)" ></span> </template> </el-table-column> </el-table> </div> </div> </template> <script> export default { data() { return { search: '', tabledata: [{ date: '2016-05-02', name: '张三', address: '上海市普陀区金沙江路 1518 弄' }, { date: '2016-05-04', name: '李四', address: '上海市普陀区金沙江路 1517 弄' }, { date: '2016-05-01', name: '王五', address: '上海市普陀区金沙江路 1519 弄' }, { date: '2016-05-03', name: '赵六', address: '上海市普陀区金沙江路 1516 弄' }] } }, components: {}, computed: { // 实时监听表格 tables: function() { const search = this.search if (search) { return this.tabledata.filter(datanews => { return object.keys(datanews).some(key => { return string(datanews[key]).tolowercase().indexof(search) > -1 }) }) } return this.tabledata } }, mounted() {}, methods: { // 筛选变色 showdate(val) { val = val + ''; if (val.indexof(this.search) !== -1 && this.search !== '') { return val.replace(this.search, '<font color="#409eff">' + this.search + '</font>') } else { return val } } } } </script>
效果图:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。