sunny123456

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

Vue——el-option下拉框绑定
https://blog.csdn.net/wx19900503/article/details/109268480

1、正常使用v-for 进行遍历 下拉框内容,如果需要增加一个自定义的值,则加一个el-option

el-option用法:

参数

说明

类型

可选值

默认值

value

选项的值

string/number/object

label

选项的标签,若不设置则默认与

value

相同

string/number

disabled

是否禁用该选项

boolean

false

在日常使用el-select 中,新增一条option 如果value对应到值是string则 不影响前端显示

<el-option key="6" label="苏州大闸蟹" value="6" />

 遇到下拉框不显示label值,如果绑定的vaule 是number,则需要前面加上: 不然会匹配不到,String不加:没问题

具体v-bind 用法:https://cn.vuejs.org/v2/api/#v-bind

<el-option key="6" label="苏州大闸蟹" :value="6" />

demo如下:

  1. <template>
  2. <div>
  3. <el-button @click="printSelect">调试</el-button>
  4. //value1 的类型 需要跟:value="item.value" 一样
  5. <el-select ref="selectValue1" v-model="value1" filterable placeholder="请选择">
  6. <el-option
  7. v-for="item in options1"
  8. :key="item.value"
  9. :label="item.label"
  10. :value="item.value"
  11. />
  12. //vaule1 为string 则 value="选项6" 前面可以不用加:即v-bind 数据绑定
  13. <el-option key="选项6" label="扬州炒饭" value="选项6" />
  14. </el-select>
  15. <el-select ref="selectValue2" v-model="value2" no-match-text filterable placeholder="请选择">
  16. //value2为number 前面需要:
  17. <el-option key="5" label="扬州炒饭" :value="5" />
  18. <el-option key="6" label="苏州大闸蟹" :value="6" />
  19. </el-select>
  20. </div>
  21. </template>

js如下:printSelect方法 测试 页面显示 和 选中之后 数据类型 和值

  1. <script>
  2. export default {
  3. data() {
  4. return {
  5. options1: [{
  6. value: '选项1',
  7. label: '黄金糕'
  8. }, {
  9. value: '选项2',
  10. label: '双皮奶'
  11. }, {
  12. value: '选项3',
  13. label: '蚵仔煎'
  14. }, {
  15. value: '选项4',
  16. label: '龙须面'
  17. }, {
  18. value: '选项5',
  19. label: '北京烤鸭'
  20. }],
  21. value1: '选项1',
  22. value2: ''
  23. }
  24. },
  25. created() {
  26. //修改value1 value2 值,查看页面是否匹配到label
  27. this.getValue()
  28. },
  29. methods: {
  30. printSelect: function() {
  31. //打印选中到 类型 值 和label值
  32. console.log(typeof this.value1 + '-' + this.value1 + '-' + this.$refs.selectValue1.selected.label)
  33. console.log(typeof this.value2 + '-' + this.value2 + '-' + this.$refs.selectValue2.selected.label)
  34. },
  35. getValue: function() {
  36. this.value1 = '选项2'
  37. this.value2 = 5
  38. }
  39. }
  40. }
  41. </script>

2、测试页面显示如下:

第二个下拉框如果改成

<el-option key="5" label="扬州炒饭" value="5" />

则label显示不了label值

 

posted on 2023-03-17 11:37  sunny123456  阅读(1389)  评论(0编辑  收藏  举报