博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
el-input 树型下拉框
阅读量:6079 次
发布时间:2019-06-20

本文共 2000 字,大约阅读时间需要 6 分钟。

1.效果图

1.1 input聚焦时显示下拉框,再次点击下拉框或点击其他处下拉框消失,主要靠z-index添加遮罩实现

image.png

1.2 实时过滤效果

image.png

2.代码 ( vue.js + element-ui )

2.1 html

2.2 JS

import 'babel-polyfill'//兼容语法 async focusexport default {  data(){    return {      form: {        MANAGER_NAME: '',        MANAGER_ID: '',      },      isShowSelect: false,// 是否显示会计主管的树状选择器      userlist: [],// 会计主管的选项数据       defaultProps: { // 会计主管 树状选择器 的选项的配置参数        children: 'children',        label: 'code_name',      },    }  },  watch: {    form: {//form.MANAGER_NAME变化时过滤节点        handler(form){          if(this.isShowSelect){            this.$refs.selectTree.filter(form.MANAGER_NAME);          }        },        deep: true,//深度监听,重要    },  },  methods:{        //下拉框的显示与隐藏        changeSelectTree(){            this.isShowSelect = !this.isShowSelect;        },        //input获取焦点事件,初始化树        async focus(e) {            let vm = this;            vm.$refs.selectTree.filter("");            vm.$refs.selectTree.setCurrentNode([]);         },        // 选择器的树节点        filterNode(value, data) {          if (!value) return true;            if(!data.code_name){                data.code_name = data.chr_code + " " + data.chr_name            }          return data.code_name.indexOf(value) !== -1;        },        //选择会计主管        selectManage(data, Node) {          this.form.MANAGER_NAME = data.code_name;//input赋值          this.form.MANAGER_ID = data.chr_id;          this.isShowSelect = false;// 关闭选择器        },         //点击遮罩层,取消选择会计主管        cancelManager(){          this.isShowSelect = false        },  }}

2.3 css

2.4 参考数据

//示例下拉框数据this.userList = [{  chr_code: "001001051",  chr_id: "9853",  chr_name: "张海舒",  is_leaf: "1",  user_type: "0",}]

转载地址:http://yghgx.baihongyu.com/

你可能感兴趣的文章
获取MS SQL TABLE列名列表
查看>>
shell常用命令集合
查看>>
【转】【C#】在 Windows 窗体 DataGridView 单元格中承载控件
查看>>
【Based Android】让你的android应用使用可爱的iphone备忘录字体
查看>>
第二部分:开发简要指南-第三章 Hello,本地化
查看>>
好胜决定态度 态度决定成败
查看>>
主机访问虚拟机中linux上的web服务
查看>>
poj 3253:Fence Repair(堆排序应用)
查看>>
Entity Framework系列
查看>>
Android控件GridView之仿支付宝钱包首页带有分割线的GridView九宫格的完美实现
查看>>
如何制作一款HTML5 RPG游戏引擎——第一篇,地图类的实现
查看>>
Android 之使用LocalBroadcastManager解决BroadcastReceiver安全问题
查看>>
破解物联网落地困境-阿里云硬件接入最佳实践
查看>>
POJ 2503 字符串(两种方法)
查看>>
ArcGIS API for Flex 调用天地图、e都市瓦片地图
查看>>
【Yaml】Yaml学习笔记
查看>>
Mockito教程
查看>>
筛选并保留最后一次记录(如筛选最后一次缴纳电费的记录 )
查看>>
亚马逊开源 Neo-AI 框架,可优化 AI 模型提升部署速度
查看>>
新网盘时代,私有云斐讯天天链N1开启智能家居新生活!
查看>>