浅谈Vue Element中Select下拉框选取值的问题


Posted in Javascript onMarch 01, 2018

之前写了.一个原生的select的,因为展示效果原因,给删除掉了,忘记保存代码了,现在大家展示使用elementUI的下拉框封装一个组件,供咱们项目中经常调用,减少代码量。

html:

<el-select v-model="ite" placeholder="请选择" value-key="mateGroup"> 
   <el-option style="width: auto" :disabled="true" :value="null"> 
    <span style="float: left;font-weight: bold">周次 </span> 
    <span style="float: left; color: #8492a6; font-size: 13px; font-weight: bold"> 开始日期 </span> 
    <span style="float: right; color: #8492a6; font-size: 13px; font-weight: bold"> 截止日期 </span> 
   </el-option> 
   <el-option v-for="(item,index) in res" :key="index" :label="item.mateGroup" v-bind:value="item"> 
    <span style="float: left; color: #8492a6; font-size: 13px">{{ item.mateGroup }} </span> 
    <span style="float: left; color: #8492a6; font-size: 13px"> {{ item.weekStartDate }}  </span> 
    <span style="float: right">{{ item.weekEndDate }}</span> 
   </el-option> 
  </el-select>

Js:

<script>
 import jQuery from 'jquery'
 export default {
  props: ['orgCode', 'farmOrg'],
  data () {
   return {
    res: [],
    ite: '',
    weekse: ''
   }
  },
  created: function () {
   var _self = this
   _self.getWeekYearly()
  },
  watch: {
   ite: function (val) {
    this.weekse = val
    console.log(this.weekse)
    this.getL()
   }
  },
  methods: {
   getWeekYearly () {
    var _self = this
    jQuery.ajax({
     url: '/standard/' + _self.orgCode + '/' + _self.farmOrg + '/getWeekly',
     type: 'GET',
     // contentType: 'application/json',
     dataType: 'json',
     success: function (res) {
      _self.res = res
     },
     fail: function (e) {
//      this.tableFlag = false
      alert('请求失败')
      console.log('查询失败')
     }
    })
   },
   getL: function () {
    var _self = this
    _self.$emit('getL', _self.weekse)
   }
  }
 }
</script>

下来我给大家说一下这个页面都做了什么-

a、在页面刚开始加载时候,通过create 调用了我们的一个方法。发送ajax.获取到下拉框该显示的值。

b、通过给select绑定一个model来监视和获取选中后的值.这里是ite

c、此处第一行option,我们写了一个固定表头, 以下通过option是通过created: funtion() 试页面加载后,立即访问后台,查询数据库,获取的下拉列表值,进行显示。

d、这里的value值.我们绑定成这条数据对象item.

Ps:这里大家肯定会想这不是很简单么?但是这里有一个坑,就是你选取的每一个值都会在下拉框中,显示成最后一个,但是实际value值是你选取的这个对象…看一看,是不是出现了,这个问题。

这个问题出现的原因是,在你option绑定key,和value时。该这些数据中有重复值导致的,造成数据对应不起..

这个问题我们需要怎么解决呢,Select值为对象类型时,需要提供一个 value-key 作为唯一性标识。

e、我们通过watch监听咱们select的model,在这个监听里面调用一个给父组件传值的方法..将咱们的item提供给父组件使用。

以上这篇浅谈Vue Element中Select下拉框选取值的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQuery.closest(),parent(),parents()寻找父结点
Feb 17 Javascript
js将iframe中控件的值传到主页面控件中的实现方法
Mar 11 Javascript
多个$(document).ready()的执行顺序实例分析
Jul 26 Javascript
js鼠标点击图片实现随机变换图片的方法
Feb 16 Javascript
JavaScript列表框listbox全选和反选的实现方法
Mar 18 Javascript
Javascript实现商品秒杀倒计时(时间与服务器时间同步)
Sep 16 Javascript
Vuejs第八篇之Vuejs组件的定义实例解析
Sep 05 Javascript
微信小程序 require机制详解及实例代码
Dec 14 Javascript
JS实现字符串转驼峰格式的方法
Dec 16 Javascript
详解VS Code使用之Vue工程配置format代码格式化
Mar 20 Javascript
详解vue项目中调用百度地图API使用方法
Apr 25 Javascript
微信小程序自定义联系人弹窗
May 26 Javascript
vue.js 获取select中的value实例
Mar 01 #Javascript
Vue中的slot使用插槽分发内容的方法
Mar 01 #Javascript
在vue中封装可复用的组件方法
Mar 01 #Javascript
JavaScript判断日期时间差的实例代码
Mar 01 #Javascript
Vue 父子组件的数据传递、修改和更新方法
Mar 01 #Javascript
vue2.0 子组件改变props值,并向父组件传值的方法
Mar 01 #Javascript
浅谈vue单一组件下动态修改数据时的全部重渲染
Mar 01 #Javascript
You might like
第三节 定义一个类 [3]
2006/10/09 PHP
粗略计算在线时间,bug:ip相同
2006/12/09 PHP
PHP实现下载功能的代码
2012/09/29 PHP
php字符串分割函数用法实例
2015/03/17 PHP
php获取远程文件内容的函数
2015/11/02 PHP
php中输出json对象的值(实现方法)
2018/03/07 PHP
小程序微信支付功能配置方法示例详解【基于thinkPHP】
2019/05/05 PHP
JavaScript 学习历程和心得分享
2010/12/12 Javascript
给jqGrid数据行添加修改和删除操作链接(之一)
2011/11/04 Javascript
jsp网页搜索结果中实现选中一行使其高亮
2014/02/17 Javascript
浅析JS中document对象的一些重要属性
2014/03/06 Javascript
js控制再次点击按钮之间的间隔时间可防止重复提交
2014/08/01 Javascript
Html5的placeholder属性(IE兼容)实现代码
2014/08/30 Javascript
浅谈JavaScript对象的创建方式
2016/06/13 Javascript
js计算系统当前日期是星期几的方法
2016/07/14 Javascript
DOM事件探秘篇
2017/02/15 Javascript
JS中获取 DOM 元素的绝对位置实例详解
2018/04/23 Javascript
vue使用Font Awesome的方法步骤
2019/02/26 Javascript
jQuery分组选择器简单用法示例
2019/04/04 jQuery
JavaScript eval()函数定义及使用方法详解
2020/07/07 Javascript
python自动化测试之连接几组测试包实例
2014/09/28 Python
Python模块结构与布局操作方法实例分析
2017/07/24 Python
基于python 二维数组及画图的实例详解
2018/04/03 Python
APIStar:一个专为Python3设计的API框架
2018/09/26 Python
pandas通过索引进行排序的示例
2018/11/16 Python
将string类型的数据类型转换为spark rdd时报错的解决方法
2019/02/18 Python
python-视频分帧&amp;多帧合成视频实例
2019/12/10 Python
python 基于卡方值分箱算法的实现示例
2020/07/17 Python
基于Python3读写INI配置文件过程解析
2020/07/23 Python
websocket+sockjs+stompjs详解及实例代码
2018/11/30 HTML / CSS
英国最大的汽车交易网站:Auto Trader UK
2016/09/23 全球购物
销售求职信范文
2014/05/26 职场文书
2015年销售内勤工作总结
2015/04/27 职场文书
PySwarms(Python粒子群优化工具包)的使用:GlobalBestPSO例子解析
2021/04/05 Python
Oracle 数据仓库ETL技术之多表插入语句的示例详解
2021/04/12 Oracle
Lombok的详细使用及优缺点总结
2021/07/15 Java/Android