vue2.0.js的多级联动选择器实现方法


Posted in Javascript onFebruary 09, 2018

由于工作需求,想实现一个多级联动选择器,但是网上现有的联动选择器都不是我想要的,我参照基于vue2.0的element-ui中的Cascader级联选择器的样式实现了复合自己要求的多级联动选择器,原理很简单,不多说,直接上代码。。。

<template>
 <div id="app">
 <div class="select">
  <div class="input_text"><input type="text" name="" v-on:focus="options1Show" v-model="result"></div>
  <div class="options1" v-show="options1isShow">
  <ul>
   <li v-on:click="toClick(option.value)" v-for="option in options">{{option.label}}</li>
  </ul>
  </div>
  <div class="options2" v-show="options2isShow">
  <ul >
   <li v-for="item in secondOptions" v-on:click="selectResult(item.label,item.value)">{{item.label}}</li>
  </ul>
  </div>
 </div>
 </div>
</template>
<script>
export default {
 name: 'app',
 data(){
 return {
  options:[
  {
   value:'zhinan',
   label:'指南',
   children:[
   {
    value: 'yizhi',
    label: '一致'
   }, {
    value: 'fankui',
    label: '反馈'
   }, {
    value: 'xiaolv',
    label: '效率'
   }, {
    value: 'kekong',
    label: '可控'
   }
   ]
  },
  {
   value: 'daohang',
   label: '导航',
   children: [{
   value: 'cexiangdaohang',
   label: '侧向导航'
   }, 
   {
   value: 'dingbudaohang',
   label: '顶部导航'
   }]
  }
  ],
  secondOptions:[],
  options1isShow:false,
  options2isShow:false,
  result:''
 }
 },
 methods:{
 options1Show:function(){
  this.options1isShow=true;
 },
 toClick:function(item){
  this.secondOptions=[];
  for(var i=0;i<this.options.length;i++){
  if(this.options[i].value==item){
   console.log(this.options[i].children);
   this.secondOptions=this.options[i].children;
   console.log(this.secondOptions);
  }
  }
  this.options2isShow=true;
 },
 selectResult:function(label){
  this.result=label;
  this.options1isShow=false;
  this.options2isShow=false;
 }
 }
}
</script>
<style>
li,ul{
 list-style: none;
 padding:0;
 margin:0;
}
li{
 height:40px;
 line-height: 40px;
 border-bottom: 1px solid #ededed;
 box-sizing: border-box;
 text-align: center;
 cursor: pointer;
}
.select{
 position: relative;
}
.input_text>input{
 width:170px;
 height:30px;
 border:1px solid #ddd;
}
.options1,.options2{
 width:170px;
 height:200px;
 border:1px solid #ddd;
 position: absolute;
 background: #fff;
 overflow-y: auto;
}
.options2{
 left:170px;
}
</style>

以上这篇vue2.0.js的多级联动选择器实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript 自适应高度的Tab选项卡
Apr 05 Javascript
JavaScript中的property和attribute介绍
Dec 26 Javascript
JS去除字符串两端空格的简单实例
Dec 27 Javascript
javascript实现的元素拖动函数宿主为浏览器
Jul 21 Javascript
浅谈javascript 函数内部属性
Jan 21 Javascript
js实现无限级树形导航列表效果代码
Sep 23 Javascript
Javascript函数式编程简单介绍
Oct 11 Javascript
表单中单选框添加选项和移除选项
Jul 04 Javascript
微信小程序 简单DEMO布局,逻辑,样式的练习
Nov 30 Javascript
angular6的响应式表单的实现
Oct 10 Javascript
vue点击自增和求和的实例代码
Nov 06 Javascript
vue模块移动组件的实现示例
May 20 Javascript
使用mint-ui实现省市区三级联动效果的示例代码
Feb 09 #Javascript
vue二级路由设置方法
Feb 09 #Javascript
从零开始搭建一个react项目开发
Feb 09 #Javascript
Vue-Router2.X多种路由实现方式总结
Feb 09 #Javascript
浅谈react受控组件与非受控组件(小结)
Feb 09 #Javascript
基于Vue2.X的路由和钩子函数详解
Feb 09 #Javascript
Vuejs 单文件组件实例详解
Feb 09 #Javascript
You might like
PHP中=赋值操作符对不同数据类型的不同行为
2011/01/02 PHP
ThinkPHP跳转页success及error模板实例教程
2014/07/17 PHP
php读取文件内容的方法汇总
2015/01/24 PHP
JS 两日期相减,获得天数的小例子(兼容IE,FF)
2013/07/01 Javascript
JavaScript中Math对象方法使用概述
2014/01/02 Javascript
邮箱下拉自动填充选择示例代码附图
2014/04/03 Javascript
jQuery链使用指南
2015/01/20 Javascript
html的DOM中Event对象onblur事件用法实例
2015/01/21 Javascript
Jquery实现动态切换图片的方法
2015/05/18 Javascript
jQuery实现Tab选项卡切换效果简单演示
2015/11/23 Javascript
JS中跨页面调用变量和函数的方法(例如a.js 和 b.js中互相调用)
2016/11/01 Javascript
js实现简单的日历显示效果函数示例
2019/11/25 Javascript
解决vux 中popup 组件Mask 遮罩在最上层的问题
2020/11/03 Javascript
[48:52]DOTA2上海特级锦标赛A组小组赛#2 Secret VS CDEC第一局
2016/02/25 DOTA
python根据出生日期返回年龄的方法
2015/03/26 Python
windows10系统中安装python3.x+scrapy教程
2016/11/08 Python
Python在图片中添加文字的两种方法
2017/04/29 Python
Python IDE Pycharm中的快捷键列表用法
2019/08/08 Python
Anaconda3+tensorflow2.0.0+PyCharm安装与环境搭建(图文)
2020/02/18 Python
python实现信号时域统计特征提取代码
2020/02/26 Python
详解Django配置JWT认证方式
2020/05/09 Python
Django model.py表单设置默认值允许为空的操作
2020/05/19 Python
python使用matplotlib的savefig保存时图片保存不完整的问题
2021/01/08 Python
matplotlib交互式数据光标实现(mplcursors)
2021/01/13 Python
使用CSS3制作倾斜导航条和毛玻璃效果
2017/09/12 HTML / CSS
中邮全球便购:中国邮政速递物流
2017/03/04 全球购物
运动会广播稿200米
2014/01/27 职场文书
篝火晚会策划方案
2014/05/16 职场文书
2015年体育部工作总结
2015/04/02 职场文书
学校光盘行动倡议书
2015/04/28 职场文书
2015年创先争优工作总结
2015/05/23 职场文书
魂断蓝桥观后感
2015/06/10 职场文书
2015年小学远程教育工作总结
2015/07/28 职场文书
小学英语教学反思范文
2016/02/15 职场文书
广告文案的撰写技巧(实用干货)
2019/08/23 职场文书
Python Pycharm虚拟下百度飞浆PaddleX安装报错问题及处理方法(亲测100%有效)
2021/05/24 Python