Vue Element Select选择器自定义验证规则

2023-11-16

前言

  • 在我们在做增删改查的时候,一般会遇到添加和修改的from表单需要表单验证。

  • 一般常规的from表单是有自己的验证规则,from加一个 :rules="rules"但他需要v-model值和prop值要一样,这是常规情况。

  • 我遇到的是,绑定多个负责人和对应的电话,加验证规则。

实际场景

1.我们在from表单绑定多个负责人就需要使用到 select 选择器,下拉的数据是点击打开弹框时发请求来的。

2.点击选中的时候,数据时对象形式,id 名字 电话 绑定在一起的。选中负责人的时候,我们是把一整个对象存到数组里面

3.因为我们用的是select下拉多选,也不能用常规的验证规则,他会不起作用,我们要写from表单自定义验证规则

 

select多选

 

下拉框数据

{
    id: '1',
    name: '秦大大',
    phonf: '15220730439'
   },

select下拉款选中时绑定的是对象

我们只需要给他绑定一个属性,value就可以直接绑定对象 具体下面有代码

 // 这个值最好是id 是唯一的
  value-key="id"

输入框表单事件

获取焦点:focus
失去焦点:blur
输入事件input
变化事件change

自定义表单验证在data下面写 在rules里面直接通过validator用 下面有代码

 

实际操作

1.添加form表单数据

<el-form-item label="负责人" prop="principalopen">
          <!-- <el-input v-model.number="form.contact" autocomplete="off"></el-input> -->
         // 多选下拉框
         // multiple 多选
         // value-key="id" 给value绑定为一只 这样value就可以选中item
         <el-select
            v-model="principalopen"
            multiple
            value-key="id"
            placeholder="请选择负责人"
            style="width: 100%"
          >
          // 下拉框数据
            <el-option
              v-for="item in principal"
              :key="item.id"
              :label="item.name"
              :value="item"
            >
            </el-option>
          </el-select>
        </el-form-item>

2.因为是一个数组 自定义验证规则 写在data 下面 官网from表单也有介绍

export default {
  data() {
    // 自定义验证规则
    var picValidator = (rule, value, callback) => {
      if (!this.principalopen.length) {
        // 一定要写 callBack() 验证完成时调用的回调函数 https://github.com/yiminghe/async-validator
        callback(new Error('校验:联系人不能为空,请选择'))
      } else {
        callback()
      }
    }
    return {}
  }
 }

3.data 里面的表单验证

rules: {
        principalopen: [
          { 
            // 是否必填 没有这个就没有前面红点
            required: true,
            // 自定义验证规则
            validator: picValidator,
            //  触发事件
            trigger: 'blur'
          }
        ]
      },

总结:

经过这一趟流程下来相信你也对 Vue Element Select选择器自定义验证规则 有了初步的深刻印象,但在实际开发中我 们遇到的情况肯定是不一样的,所以我们要理解它的原理,万变不离其宗。加油,打工人!

什么不足的地方请大家指出谢谢 -- 風过无痕

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Vue Element Select选择器自定义验证规则 的相关文章

  • iPad - 无法在框架内滚动

    我无法滚动 iPad Safari 中框架内调用的 pdf 我已经尝试过两件事 2 指滚动 使用对象 嵌入代替框架 但这是行不通的 事实上我已经尝试了很多东西 溢出 高度等等 请帮我 先感谢您 根据这篇文章http support appl
  • 从 php 到 JavaScript 的数组

    我正在尝试使用 json 将数组列表从 php 传输到 javascript 但它不起作用 JS ajax url getProfilePhotos php type post post or get method data if you
  • React Native:不透明视图内的透明视图

    我想用不透明框架和透明中心显示相机的视图 就像图片中的一样 黑色部分是相机的视图 我正在寻找具有纯反应本机组件的解决方案 没有额外的库 例如https github com gilbox react native masked view h
  • JavaScript - 无需布尔值即可运行一次

    有没有办法只运行一段JavaScript代码ONCE 而不使用布尔标志变量来记住它是否已经运行过 具体来说not就像是 var alreadyRan false function runOnce if alreadyRan return a
  • 雅虎 OAuth2 隐式授予流程不适用于新的雅虎应用程序

    我有现有的网络应用程序和专用雅虎应用程序 https developer yahoo com apps 在职的 它用OAuth2 隐式授权流程 https developer yahoo com oauth2 guide flows imp
  • 递归修剪对象中所有元素的更好方法?

    如果我有一个像这样的物体 const obj field subfield innerObj a asdasd asdas innerArr s ssad innerArrObj b adsad 我想出了这样的东西 const trimFi
  • 如何使用 jQuery Ajax 将 PHP 数组值传递到另一个文件?

    这是我的代码
  • html canvas动画卡顿

    谁能解释为什么提供的画布动画断断续续 我创建了一个测试存根来演示该问题 我在桌面上的 FF Chrome IE 以及 Android 上的 FF 和 Chrome 中看到了卡顿现象 口吃是由于垃圾收集造成的吗 似乎 raf 在每次调用时都会
  • 避免在 ES6 的函数内定位 this 的对象作用域

    例如 我正在使用 D3 js 运行一个项目 导入特定模块并调用它们的函数 Setup TypeScript ES6 导入特定的 D3 组件 角6 我有一个对象 在本例中是一个角度指令 并在 SVG 画布上绘制一些圆圈 并希望它们在拖动事件上
  • 带有 mkdocs 的本地 mathjax

    我想在无法访问互联网的计算机上使用 MathJax 和 Mkdocs 因此我不能只调用 Mathjax CDN Config mkdocs yml site name My Docs extra javascript javascripts
  • 如何在 javascript 中基于类型字符串创建新对象?

    如何基于变量类型字符串 包含对象名称 在 javascript 中创建新对象 现在我有 随着更多工具的出现 列表会变得更长 function getTool name switch name case SelectTool return n
  • 将 onclick 事件应用于页面加载时不存在的元素

    我将列表样式设置为看起来像选择框 并且当用户单击列表中的元素时我想触发一个函数 但是该元素是通过加载的AJAX因此 当页面加载并且我无法绑定时不存在onclick事件到它onDomReady 如果我把它作为一个普通的选择列表 我可以只标记一
  • @aspnet/signalr 与 @microsoft/signalr javascript 库

    aspnet signalr 与 microsoft signalr javascript 库有什么区别 两者似乎都对 DotNetCore SignalR 有效 两者似乎都很活跃 在一些教程中 我找到 aspnet signalr 在Do
  • JavaScript Promise 不执行 .then()

    我在 JavaScript 中的 Promise 方面遇到了一些问题 我想做的是获得一个地址列表 然后对于每个地址 我需要调用地理编码 API 来获取 lat lng 然后我将继续将标记与热图一起绘制 这是我的代码 let promiseK
  • 是否可以将请求标头添加到 CORS 预检请求中?

    我有一个从外部服务器 不是服务器 访问 API 的网站 为网站提供服务 通过简单的XmlHttpRequest 见下文 那个API 需要将用于访问服务的 API 密钥添加为请求标头 然而 正如这些CORS https developer m
  • JavaScript 提升解释

    下面的片段有什么区别 var a 0 function b a 10 return function a b console log a gt 10 and var a 0 function b a 10 return function a
  • 不使用控件时,视频元素在 Chrome 中消失

    So I think这是一个浏览器错误 它出现在一个更复杂的设计 网站中 但我已经进行了很好的尝试 简化了我的代码和设计等 并发现了以下内容 嵌入时
  • Django 将 JSON 数据传递给静态 getJSON/Javascript

    我正在尝试从 models py 中获取数据并将其序列化为views py 中的 JSON 对象 模型 py class Platform models Model platformtype models CharField max len
  • 弹出窗口的动态高度取决于内容,可能吗?

    是否有可能获得一个宽度始终为 400px 的弹出窗口 但根据弹出窗口中的内容动态高度 我已经看到了这个 但不知道如何将其应用到弹出窗口 调整 iframe 的宽度高度以适应其中的内容 https stackoverflow com ques
  • 如何为 Imagus 悬停缩放扩展开发自定义过滤器?

    当我读到关于悬停缩放是邪恶的 http www reddit com r YouShouldKnow comments 1wjrc8 ysk that the hover zoom extension is spyware 哎呀 有两篇文章

随机推荐

  • Qt自定义信号

    QT Qt自定义信号 Qt中的类库有接近一半是从基类QObject上继承下来 信号与反应槽 signals slot 机制就是用来在QObject类或其子类间通讯的方法 作为一种通用的处理机制 信号与反应槽非常灵活 可以携带任意数量的参数
  • 头歌平台python数据分析——(2)Numpy进阶

    第1关 Numpy广播 首先用arange 生成一个数组 然后用reshape 方法 将数组切换成4x3的形状 最后再与basearray相加 输出它们的和 第2关 Numpy高级索引 首先 利用花式索引获取arr数组第line行 至少两行
  • opencv(C++) 连通域分析函数 connectedComponentsWithStats() 用法

    文章目录 1 函数用法 2 参数说明 3 例子 只保留图中连通域面积较大的区域 connectedComponentsWithStats 是一个非常好用的连通域分析函数 可以检测连通域 获取连通域的面积 宽度 高度 质心和左上角顶点坐标等
  • 极简化版-无root实现抓包-VMOS+HttpCanary(小黄鸟)抓包-解决抓包时无网络问题

    文章目录 前言 一 真机中的操作 分别安装以下应用 二 安装vmos的操作 三 vmos的操作 四 解决抓包时无网络问题 建议 前言 适用大部分手机 实现各种抓包 一 真机中的操作 分别安装以下应用 vmos 自行下载 小黄鸟 https
  • 冉起新秀:Apache六大尚未广为人知的大数据项目

    原文地址 On the Rise Six Unsung Apache Big Data Projects 作者 SAM DEAN 译者 吴洁 世界各地无数的组织 他们使用的数据现在日益庞大而复杂 使用传统的数据处理程序已无法再进行优化分析及
  • mysql命令、mysqldump命令找不到解决

    1 解决bash mysql command not found 的方法 root DB 02 mysql u root bash mysql command not found 原因 这是由于系统默认会查找 usr bin下的命令 如果这
  • spring boot发布脚本

    venus deploy sh bin bash P PATH usr local venus P PATH venus sh stop CUR DATE date Y m d H M S mv P PATH venus web jar P
  • ffmpeg 录制和播出复用流(多节目流)

    ffmpeg 录制和播出复用流 多节目流 此处的播放还是录制的意思 录制是存成文件 播放是用udp的协议发送出去 故此处播放的含义还是录制的意思 复用流录制 假如有一个复用流 包含4个节目 如下 ffmpeg probesize 10000
  • pip安装python库出现:ModuleNotFoundError: No module named 'setuptools._deprecation_warning'

    Could not import setuptools which is required to install from a source distribution Traceback most recent call last File
  • 机器学习 朴素贝叶斯之邮件分类

    目录 一 贝叶斯算法 1 先验概率 2 后验概率 3 贝叶斯定理 4 概率模型 二 朴素贝叶斯分类器 1 朴素贝叶斯分类 2 拉普拉斯修正 3 防溢出策略 4 垃圾邮件分类 三 利用朴素贝叶斯分类对于电子邮件分类 1 使用的数据集 2 相关
  • Ubuntu16.04下交叉编译适配openwrt(CC版本)的swoole扩展库(swoole-1.10.3)

    Ubuntu16 04下交叉编译适配openwrt CC版本 的swoole扩展库 swoole 1 10 3 文章目录 Ubuntu16 04下交叉编译适配openwrt CC版本 的swoole扩展库 swoole 1 10 3 一 简
  • thinkphp6 入门(5)-- 模型是什么 怎么用

    一 模型 MVC架构 之前开发一个功能 后端为在控制器 C 中写 php SQL 前端为在页面 V 中写html css js 这就形成了 VC 架构 但是发现 相同的数据逻辑 SQL 在不同的功能中可能被用到 所以可以把数据逻辑 SQL
  • Mysql优化4-合适的索引

    四中索引 普通索引 主键索引 唯一索引 全文索引 一 索引的CURD 1 添加 1 1 主键索引添加 把一张表的一个字段设置为主键 该字段就位主键索引 id int unsigned primary key auto increment u
  • 注册表知识和技巧大全

    注册表知识和技巧大全 注册表基础 系统文件夹 名称 路径 含义 AppData C Windows Application Data 应用程序 Cache C Windows Temporary Internet Files 浏览器缓存 C
  • 【光电设计大赛】非接触酒精浓度测量中放大器和ADC模块误差分析

    放大器误差分析 微小信号测量实验中 主要会对结果造成影响有失调电压和噪声 噪声有外界电磁干扰噪声和运放本身的固有噪声 失调电压可以通过在输入端加入反向电压来消除 通过放大器的调零按钮使失调电压降低到很小 外界电磁噪声可以通过电磁屏蔽消除 但
  • 7-1 设计一个学生类和它的一个子类——本科生类(interface接口)

    设计一个学生类 Student 和它的一个子类 本科生类 Undergraduate 要求如下 1 Student类有姓名 name 和年龄 age 属性 两者的访问权限为protected 一个包含两个参数的构造方法 用于给姓名和年龄属性
  • uWSGI+nginx+supervisor部署django项目

    本文主要介绍如何编译nginx uwsgi以及supervisor 配置文件实现django项目启动 01 为什么用django nginx uwsgi Django本身只是一个基于Python语言写的一个开源WEb框架 不具备服务器网关功
  • 恭喜ULAM团队在数字版权领域的研究上有了新突破

    恭喜北京清链华识科技有限公司在数字版权领域的研究上有了新的突破 其中团队所研究的课题 基于区块链技术的数字版权管理应用研究 得到了河北省科学院的认可 并且在 河北省科学院学报 的 大数据与区块链技术专刊 上成功刊登 河北省科学院学报 是由河
  • 什么是JDBC,JDBC的主要功能是什么?

    JDBC Java Data Base Connectivity 是Java连接数据库的一门技术 是一种执行SQL的API 可以为多种关系型数据库提供统一的访问功能 它是由一组用java语言编写的类和接口组成 是Java访问数据库的标准规范
  • Vue Element Select选择器自定义验证规则

    前言 在我们在做增删改查的时候 一般会遇到添加和修改的from表单需要表单验证 一般常规的from表单是有自己的验证规则 from加一个 rules rules 但他需要v model值和prop值要一样 这是常规情况 我遇到的是 绑定多个