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 相关文章推荐
用ASP将SQL搜索出来的内容导出为TXT的代码
Jul 27 Javascript
Javascript 判断函数类型完美解决方案
Sep 02 Javascript
Firefox/Chrome/Safari的中可直接使用$/$$函数进行调试
Feb 13 Javascript
node.js中的buffer.Buffer.isBuffer方法使用说明
Dec 14 Javascript
JavaScript中继承用法实例分析
May 16 Javascript
Bootstrap图片轮播组件使用实例解析
Jun 30 Javascript
javascript类型系统——undefined和null全面了解
Jul 13 Javascript
jQuery中的AjaxSubmit使用讲解
Sep 25 Javascript
ES6教程之for循环和Map,Set用法分析
Apr 10 Javascript
解决vue2.0 element-ui中el-upload的before-upload方法返回false时submit()不生效问题
Aug 24 Javascript
jQuery选择器之基本过滤选择器用法实例分析
Feb 19 jQuery
微信小程序实现翻牌抽奖动画
Sep 21 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
业余方法DIY电子管FM收音机
2021/03/02 无线电
php生成随机数或者字符串的代码
2008/09/05 PHP
PHP的Json中文处理解决方案
2016/09/29 PHP
Yii 访问 Gii(脚手架)时出现 403 错误
2018/06/06 PHP
javascript获取当前ip的代码
2009/05/10 Javascript
js实现倒计时时钟的示例代码
2013/12/17 Javascript
简介JavaScript中strike()方法的使用
2015/06/08 Javascript
jquery带翻页动画的电子杂志代码分享
2015/08/21 Javascript
javascript鼠标滑过显示二级菜单特效
2020/11/18 Javascript
深入学习nodejs中的async模块的使用方法
2017/07/12 NodeJs
vue axios用法教程详解
2017/07/23 Javascript
angularjs实现时间轴效果的示例代码
2017/11/29 Javascript
小程序实现多选框功能
2018/10/30 Javascript
你可能从未使用过的11+个JavaScript特性(小结)
2020/01/08 Javascript
uniapp电商小程序实现订单30分钟倒计时
2020/11/01 Javascript
python获取一组数据里最大值max函数用法实例
2015/05/26 Python
Python基于回溯法子集树模板解决旅行商问题(TSP)实例
2017/09/05 Python
python验证码识别实例代码
2018/02/03 Python
详解Python使用tensorflow入门指南
2018/02/09 Python
PyQt5+requests实现车票查询工具
2019/01/21 Python
python判断是空的实例分享
2020/07/06 Python
python 还原梯度下降算法实现一维线性回归
2020/10/22 Python
python中time包实例详解
2021/02/02 Python
英国派对礼服和连衣裙购物网站:TFNC London
2018/07/07 全球购物
NYX Professional Makeup官方网站:专业彩妆和美容产品
2019/10/29 全球购物
数据库笔试题
2013/05/09 面试题
J2EE中的容器都包括哪些
2013/08/21 面试题
优秀英语专业毕业生求职信
2013/11/23 职场文书
大学四年职业生涯规划书范文
2014/01/02 职场文书
实习生岗位职责
2014/04/12 职场文书
群众路线组织生活会发言材料
2014/10/17 职场文书
2014年酒店工作总结与计划
2014/11/17 职场文书
培训通知书模板
2015/04/17 职场文书
2016年优秀少先队员事迹材料
2016/02/26 职场文书
php去除deprecated的实例方法
2021/11/17 PHP
Windows server 2022创建创建林、域树、子域的步骤
2022/06/25 Servers