vue实现前端列表多条件筛选


Posted in Javascript onOctober 26, 2020

本文实例为大家分享了vue实现前端列表多条件筛选的具体代码,供大家参考,具体内容如下

1、先上图:

vue实现前端列表多条件筛选

2、搜索条件绑定的数据是:

filterForm:{
 schoolName:'',//输入的学校名称
 position:'',//选择的区域区域
 schoolLevel:"",//选择的学校办别
},
schoolList:[
 {schoolName:'青岛市实验高级中学',schoolLevel:"",position:'山东省青岛市城阳区硕阳路69号'},
 {schoolName:'山东省青岛第二中学',schoolLevel:"",position:'山东省青岛市崂山区松岭路70号'},
 {schoolName:'山东省青岛第一中学',schoolLevel:"",position:'山东省青岛市市南区单县路46号'},
 {schoolName:'山东省青岛第三十九中学',schoolLevel:"",position:'市南区登州路5号'},
 {schoolName:'山东省青岛第六中学',schoolLevel:"",position:'山东省青岛市黄岛区云台山路66号'},
 {schoolName:'山东省青岛第十九中学',schoolLevel:"",position:'山东省青岛市即墨区鳌山卫街道卫场路69号'},
 {schoolName:'青岛艺术学校',schoolLevel:"",position:'青岛市李沧区九水路176号'},
 {schoolName:'山东省青岛第九中学',schoolLevel:"",position:'山东省青岛市黄岛区七星河路559号'},
 {schoolName:'青岛电子学校',schoolLevel:"",position:'山东省青岛市市北区台东一路118号'}
],//其中schoolList是元数据
resull:[]//搜索结果,也是列表循环的数据

3、监听:

watch: {
 // 监听对象变化
 filterForm:{
 handler(val, oldVal){
  if(val){
  // 如果筛选条件全为空,查全部;否则按条件筛选
  var objIsEmpty = this.filterForm.schoolName == '' && this.filterForm.schoolLevel == '' && this.filterForm.position == ''
  if(objIsEmpty){
   this.result = this.schoolList
  } else {
   // /拿到有值的参数
   let tempFilter = {};
   for(var key in this.filterForm) {
   if(typeof(this.filterForm[key]) != "undefined" && typeof(this.filterForm[key]) != "null" && this.filterForm[key] != null && this.filterForm[key] != "") {
    tempFilter[key] = this.filterForm[key];
   }
   }
   // console.log(tempFilter,'输出tempFilter')
   this.result = this.schoolList.filter(
   //筛选
   (item) => {
    let flag = false;
    for(key in tempFilter) {
    console.log(key,'输出key')
     if(item[key].toString().indexOf(tempFilter[key].toString()) >= 0) {
     flag = true;
     } else {
                    flag = false;
                    break;
                  }
                }
                if(flag) {
                  return item;
                }
              }
            );
            console.log(this.result,'输出筛选结果')
          }
        }
      },
      deep:true
    }
}

关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。

更多vue学习教程请阅读专题《vue实战教程》

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery提交表单ajax查询实例代码
Oct 07 Javascript
解决用jquery load加载页面到div时,不执行页面js的问题
Feb 22 Javascript
JS运动框架之分享侧边栏动画实例
Mar 03 Javascript
基于JS实现无缝滚动思路及代码分享
Jun 07 Javascript
jQuery实现鼠标经过购物车出现下拉框代码(推荐)
Jul 21 Javascript
js文件中直接alert()中文出来的是乱码的解决方法
Nov 01 Javascript
js 发布订阅模式的实例讲解
Sep 10 Javascript
详解Vuex管理登录状态
Nov 13 Javascript
浅谈Node.js爬虫之网页请求模块
Jan 11 Javascript
详解Angular5 路由传参的3种方法
Apr 28 Javascript
vue2.x 对象劫持的原理实现
Apr 19 Javascript
vue使用svg文件补充-svg放大缩小操作(使用d3.js)
Sep 22 Javascript
vue实现单一筛选、删除筛选条件
Oct 26 #Javascript
vue通过接口直接下载java生成好的Excel表格案例
Oct 26 #Javascript
基于elementUI竖向表格、和并列的案例
Oct 26 #Javascript
原生js实现贪吃蛇游戏
Oct 26 #Javascript
JavaScript实现五子棋小游戏
Oct 26 #Javascript
详解vue3.0 的 Composition API 的一种使用方法
Oct 26 #Javascript
vue3.0 加载json的方法(非ajax)
Oct 26 #Javascript
You might like
两个强悍的php 图像处理类1
2009/06/15 PHP
创建配置文件 用PHP写出自己的BLOG系统 2
2010/04/12 PHP
js 对联广告、漂浮广告封装类(IE,FF,Opera,Safari,Chrome
2009/11/26 Javascript
ExtJS PropertyGrid中使用Combobox选择值问题
2010/06/13 Javascript
JQuery+JS实现仿百度搜索结果中关键字变色效果
2011/08/02 Javascript
CSS鼠标响应事件经过、移动、点击示例介绍
2013/09/04 Javascript
JS判断当前页面是否在微信浏览器打开的方法
2015/12/08 Javascript
原生js实现图片层叠轮播切换效果
2016/02/02 Javascript
thinkphp标签实现bootsrtap轮播carousel实例代码
2017/02/19 Javascript
微信小程序实现图片懒加载的示例代码
2017/12/13 Javascript
Vue resource三种请求格式和万能测试地址
2018/09/26 Javascript
Node.js开发之套接字(socket)编程入门示例
2019/11/05 Javascript
[46:58]完美世界DOTA2联赛PWL S3 Forest vs LBZS 第一场 12.17
2020/12/19 DOTA
python 多线程应用介绍
2012/12/19 Python
Python类的多重继承问题深入分析
2014/11/09 Python
ubuntu 16.04下python版本切换的方法
2019/06/14 Python
关于python字符串方法分类详解
2019/08/20 Python
Python测试线程应用程序过程解析
2019/12/31 Python
python实现输入三角形边长自动作图求面积案例
2020/04/12 Python
Python Unittest原理及基本使用方法
2020/11/06 Python
意大利值得信赖的在线超级药房:PillolaStore
2020/02/05 全球购物
JAVA程序员面试题
2012/10/03 面试题
人事行政主管岗位职责
2013/12/22 职场文书
专升本个人自我评价
2013/12/22 职场文书
推荐信格式范文
2014/05/09 职场文书
土地租赁意向书
2014/07/30 职场文书
践行三严三实心得体会
2014/10/13 职场文书
北京英文导游词
2015/02/12 职场文书
2015年店长工作总结范文
2015/04/08 职场文书
社区党务工作总结2015
2015/05/19 职场文书
运动会致辞稿
2015/07/29 职场文书
2016高考冲刺决心书
2015/09/23 职场文书
决心书格式范文
2015/09/23 职场文书
担保书范文
2019/07/09 职场文书
MySQL 开窗函数
2022/02/15 MySQL
mysql insert 存在即不插入语法说明
2022/03/25 MySQL