vue table表格中如何控制下拉框的显示隐藏

 更新时间:2023年01月18日 11:14:20   作者:suzhiwei_boke  
这篇文章主要介绍了vue table表格中如何控制下拉框的显示隐藏问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

vue table表格控制下拉框的显示隐藏

需求:点击表格的某一个列的吗某个值,显示那值得下拉框,失去焦点时则隐藏

平时

点击

失去焦点后变化平时的显示

        <vxe-table-column align="center" title="类型" width="270" style="height:40px;" field="collectionType">
          <template slot-scope="scope">
            <!--                 @change="changeSelect(scope,$event)"
                @visible-change="handleBlur(scope,$event)" -->
            <el-select v-if="scope.row.isModifiy2" ref="goodsSelect" v-model="scope.row.collectionType" size="mini" placeholder="请选择" @visible-change="handleBlur(scope,$event)" @change="changeSelect(scope.row,$event)">
              <el-option v-for="item in selectData" :key="item.value" :label="item.label" :value="item.value" />
            </el-select>
            <template v-else><div style="cursor:pointer">{{ scope.row.collectionType }}</div></template>
          </template>

通过设置scope.row.isModifiy2的属性判断下拉框的显示隐藏

通过插槽,获取整个表格具体的某一个值

通过这三个属性来获取到点击的某个值,

row获取那一行的数据,column获取那一列的数据,

      const index = this.dataTable.findIndex((item) => { return column.property === item.prop })
//获取点击值那一列的索引
      if (!this.dataTable[index]) return
      if (this.dataTable[index].isModifiy !== undefined) {
        row.isModifiy = true
        this.dataTable[index].isModifiy = true
        //上面的isModifiy是为了解决复杂的表单需要的设置
        this.dataTable = Object.assign([], this.dataTable)
        //要进行数据的深拷贝,不然第一次点击的时会有点问题
        this.$nextTick(() => {

 e为false时,就是下拉框隐藏时,就会执行下面操作,让下拉框隐藏

 

vue下拉框清空

<Select ref="vendorId" v-model="formInline.vendorId" @on-open-change="venSelect" filterable style="width: 162px;" @on-change="vendorChange"
            v-if="vendorShow">
            <Option v-for="item in vendorList" :value="item.vendorId" :key="item.vendorId">{{ item.venAbbName + '-' + item.vendorCode }}</Option>
  </Select>

要重置查询的数据。在重置中清空refs 

// 重置
      reloadFun() {
        this.formInline = {
          vendorId: '',
          productCode: '',
          inventoryCode: '',
          sendDate: '',
          remark: '',
          cwhCode:''
        }
        this.$refs.vendorId.query = ''//.query是因为this.$refs.vendorId只能清空展示的下拉框的数据,不能清空底层的数据所以要.query清空底层数据
        this.tableData = []
      },

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • vue中关于redirect(重定向)初学者的坑

    vue中关于redirect(重定向)初学者的坑

    这篇文章主要介绍了vue中关于redirect(重定向)初学者的坑,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • Vue 使用v-model实现控制子组件显隐效果

    Vue 使用v-model实现控制子组件显隐效果

    v-model 可以实现双向绑定的效果,允许父组件控制子组件的显示/隐藏,同时允许子组件自己控制自身的显示/隐藏,本文给大介绍Vue 使用v-model实现控制子组件显隐,感兴趣的朋友一起看看吧
    2023-11-11
  • vue项目打包后请求地址错误/打包后跨域操作

    vue项目打包后请求地址错误/打包后跨域操作

    这篇文章主要介绍了vue项目打包后请求地址错误/打包后跨域操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • vueJs实现DOM加载完之后自动下拉到底部的实例代码

    vueJs实现DOM加载完之后自动下拉到底部的实例代码

    这篇文章主要介绍了vueJs实现DOM加载完成之后自动下拉到底部的实例代码,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-08-08
  • Vue中使用this.$set()如何新增数据,更新视图

    Vue中使用this.$set()如何新增数据,更新视图

    这篇文章主要介绍了Vue中使用this.$set()实现新增数据,更新视图方式。具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • Vue.js监听select2的值改变进行查询方式

    Vue.js监听select2的值改变进行查询方式

    这篇文章主要介绍了Vue.js监听select2的值改变进行查询方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • vue基于v-charts封装双向条形图的实现代码

    vue基于v-charts封装双向条形图的实现代码

    这篇文章主要介绍了vue基于v-charts封装双向条形图的实现代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • Vue实现跑马灯简单效果

    Vue实现跑马灯简单效果

    这篇文章主要为大家详细介绍了Vues实现跑马灯效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • vue-element-admin按钮级权限管控的实现

    vue-element-admin按钮级权限管控的实现

    开发离不开权限,不同的用户登录,根据不同的权限,可以访问不同的管理目录,本文主要介绍了vue-element-admin按钮级权限管控的实现,具有一定的参考价值,感兴趣的可以了解一下
    2022-04-04
  • Vue.js实现简单动态数据处理

    Vue.js实现简单动态数据处理

    本篇文章主要介绍了Vue.js实现简单动态数据处理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02

最新评论