• 前端el-select 单选和多选


    el-select单选

    1. "部门名称" prop="departId">
    2. <el-select v-model="dataForm.departId" placeholder="请选择" clearable
    3. :style='{ "width": "100%" }' :multiple="false" filterable :allow-create="true"
    4. @change="departIdChange">
    5. <el-option v-for="(item, index) in departIdOptions" :key="index" :label="item.fullName"
    6. :value="item.id">
    7. el-option>
    8. el-select>

     :multiple="false"  表示不能多选只能单选

    1. //部门名称赋值
    2. departIdChange(val) {
    3. let obj = {};
    4. obj = this.departIdOptions.find((item) => {
    5. return item.id === val;
    6. });
    7. this.dataForm.departName = obj.fullName;
    8. },
    1. departIdOptions: [
    2. {id: '国网上海超高压公司运检部', fullName: '国网上海超高压公司运检部'},
    3. {id: '变电运维中心', fullName: '变电运维中心'},
    4. {id: '变电检修中心', fullName: '变电检修中心'},
    5. {id: '输电运检中心', fullName: '输电运检中心'},
    6. {id: '智能运检管控中心', fullName: '智能运检管控中心'},
    7. ],

    el-select多选

    1. "11">
    2. <el-form-item label="责任部门" prop="dutyDepartId">
    3. <el-select v-model="dataForm.dutyDepartId" placeholder="请选择" clearable
    4. :style='{ "width": "100%" }' :multiple="true" filterable :allow-create="true"
    5. @change="dutyDepartIdChange">
    6. <el-option v-for="(item, index) in departIdOptions" :key="index" :label="item.fullName"
    7. :value="item.id">
    8. el-option>
    9. el-select>
    10. el-form-item>

    :multiple="true" 表示允许多选 

    提交按钮中,因为有多选,所以需要对传到后端的数据进行处理        

    1. "primary" @click="dataFormSubmit()" v-if="!isDetail"> 确 定
    2. dataFormSubmit() {
    3. this.$refs['elForm'].validate((valid) => {
    4. if (valid) {
    5. this.request()
    6. }
    7. })
    8. },
    9. request() {
    10. var _data = this.dataList()
    11. }
    12. /**
    13. * 数据格式化,将提交的表单数据转为JSON对象
    14. */
    15. dataList() {
    16. var _data = JSON.parse(JSON.stringify(this.dataForm));
    17. let dutyDepartId = ""
    18. let arr = _data['dutyDepartId']
    19. dutyDepartId = arr.join(', ')
    20. _data['dutyDepartId'] = dutyDepartId
    21. return _data;
    22. },

    多选比单选多出来的操作:就是在编辑的时候,也需要通过 “,” 隔开     

    1. "text" @click="addOrUpdateHandle(scope.row.id)">编辑
    2. addOrUpdateHandle(id, isDetail) {
    3. this.formVisible = true
    4. this.$nextTick(() => {
    5. this.$refs.JNPFForm.init(id, isDetail)
    6. })
    7. },

     

    1. init(id, isDetail) {
    2. this.$nextTick(() => {
    3. if (this.dataForm.id) {
    4. this.loading = true
    5. //加载表单数据
    6. getListToEdit(this.dataForm.id).then(res => {
    7. this.dataInfo(res.data)
    8. this.loading = false
    9. })
    10. }
    11. });
    12. },
    13. dataInfo(dataAll) {
    14. let _dataAll = dataAll
    15. _dataAll['dutyDepartId'] = _dataAll['dutyDepartId'].split("、")
    16. this.dataForm = _dataAll
    17. },

  • 相关阅读:
    java如何创建一个只读集合呢?
    【毕业设计】基于java+Eclipse +SQL Server的工厂进销存管理系统设计与实现(毕业论文+程序源码)——工厂进销存管理系统
    mysql -mmm
    搭建K8s集群
    软件项目管理 9.2.软件项目配置管理过程
    大数据——StarRocks 实现高可用连接以及负载均衡(Keepalived+Haproxy服务高可用,outlook邮箱使用mailx报警)
    Expected end or semicolon (after version specifier) opencv-python>=3. 解决方案
    Android studio连接MySQL并完成简单的登录注册功能
    数据恢复篇:适用于MacOS的顶级数据恢复软件
    MFC DLL注入失败一些错误总结
  • 原文地址:https://blog.csdn.net/xy58451921/article/details/133641072