验证部分表单是否重复

1. 效果

1397725-20180910163106253-1694943595.png

  • 图片中的名称、机构编码需要进行重复验证

2. 思路及实现

  1. 表单验证
  • 在获取数据将需要验证的表单数据进行保存
    this.nameChangeTemp = response.data.orgName;this.codeChangeTemp = response.data.orgCode;
  • 通过rule对表单进行验证
    以名字的验证为例
    rules: {orgName: [// 设置为必传{ required: true, message: "请输入用户", trigger: 'blur' },// 设置长短{ min: 2, max: 20, message: "长度在 2 到 20 个字符", trigger: 'blur' },// 通过方法进行验证{ validator: validateIsReOrgName, trigger: 'blur' }],}...var validateIsReOrgName = (rule, value, callback) => {let obj = {orgName: value}//  如果没有发生编辑,那么就直接返回if (value === this.nameChangeTemp) {callback();return}// 通过接口访问后台,然后确定通过后台的数据,判断是否重复isNameDuplication(obj).then((res) => {if (res.data) {callback(new Error('机构重名,请重新输入'));}callback();})}
  1. 更新时,对输入框内容的处理
  • 更新时,如果需要验证的内容没有发生改变,那么就不需要传到后台。
  • 这儿有两种方式可以知道内容是否发生改变:
    (1)一种是1中验证的时候,然后验证通过设置标志位;
    (2)通过change事件;
    这儿我们通过change事件完成
    // 表单部分,以名称为例<el-form-item label="名称" prop="orgName" ref="orgName"><el-input v-model="form.orgName" placeholder="请输入名称" :disabled="form.orgName==='云课堂'" @change="nameChange"></el-input></el-form-item>......// 事件驱动程序   nameChange () {this.nameChangeMark = true;},codeChange () {this.codeChangeMark= true;}// 进行编辑时的请求,首先通过delete将这两个属性去掉,再根据标志位将对应的属性添加进来let obj = deepClone(this.form) // 这儿对表单里面的数据进行深度赋值delete obj.orgName;delete obj.orgCode;if (this.nameChangeMark) {obj.orgName = this.form.orgName;}if (this.codeChangeMark) {obj.orgCode = this.form.orgCode;}putObj(obj).then(res => {if (!res || res.status !== 200) {this.$message.error(res.message)return}this.showValue();this.$message({message: '更新成功',type: 'success'});});

转载于:https://www.cnblogs.com/usebtf/p/9620957.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/388550.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python bokeh_提升视觉效果:使用Python和Bokeh制作交互式地图

python bokehLet’s face it, fellow data scientists: our clients LOVE dashboards. Why wouldn’t they? Visualizing our data helps us tell a story. Visualization turns thousands of rows of data into a compelling and beautiful narrative. In fact, dashboard vi…

用C#写 四舍五入函数(原理版)

doubled 0.06576523;inti (int)(d/0.01);//0.01决定了精度 doubledd (double)i/100;//还原 if(d-dd>0.005)dd0.01;//四舍五入 MessageBox.Show((dd*100).ToString()"%");//7%,dd*100就变成百分的前面那一部分了

C++设计UDP协议通讯示例

UDP是一种面向非连接&#xff0c;不可靠的通讯协议&#xff0c;相对于TCP来说&#xff0c;虽然可靠性不及&#xff0c;但传输效率较高   一、绪言   UDP是一种面向非连接&#xff0c;不可靠的通讯协议&#xff0c;相对于TCP来说&#xff0c;虽然可靠性不及&#xff0c;但…

浪里个浪 FZU - 2261

TonyY是一个喜欢到处浪的男人&#xff0c;他的梦想是带着兰兰姐姐浪遍天朝的各个角落&#xff0c;不过在此之前&#xff0c;他需要做好规划。 现在他的手上有一份天朝地图&#xff0c;上面有n个城市&#xff0c;m条交通路径&#xff0c;每条交通路径都是单行道。他已经预先规划…

C#设计模式(9)——装饰者模式(Decorator Pattern)

一、引言 在软件开发中&#xff0c;我们经常想要对一类对象添加不同的功能&#xff0c;例如要给手机添加贴膜&#xff0c;手机挂件&#xff0c;手机外壳等&#xff0c;如果此时利用继承来实现的话&#xff0c;就需要定义无数的类&#xff0c;如StickerPhone&#xff08;贴膜是手…

北大青鸟c语言课后答案,北大青鸟C语言教程--第一章 C语言基础.ppt

《北大青鸟C语言教程--第一章 C语言基础.ppt》由会员分享&#xff0c;可在线阅读&#xff0c;更多相关《北大青鸟C语言教程--第一章 C语言基础.ppt(20页珍藏版)》请在人人文库网上搜索。1、第一章,C 语言基础,2,课程地位,.Net ,以 # 开始的语句称为预处理器指令,#include语句不…

nosql_探索NoSQL系列

nosql数据科学 (Data Science) Knowledge on NoSQL databases seems to be an increasing requirement in data science applications, yet, the taxonomy is so diverse and problem-centered that it can be a challenge to grasp them. This post attempts to shed light on…

C++TCP和UDP属于传输层协议

TCP和UDP属于传输层协议。其中TCP提供IP环境下的数据可靠传输&#xff0c;它事先为要发送的数据开辟好连接通道&#xff08;三次握手&#xff09;&#xff0c;然后再进行数据发送&#xff1b;而UDP则不为IP提供可靠性&#xff0c;一般用于实时的视频流传输&#xff0c;像rtp、r…

程序员如何利用空闲时间挣零花钱

一&#xff1a; 私活 作为一名程序员&#xff0c;在上班之余&#xff0c;我们有大把的时间&#xff0c;不能浪费&#xff0c;这些时间其实都是可以用来挖掘自己潜在的创造力&#xff0c;今天要讨论的话题就是&#xff0c;程序员如何利用空余时间挣零花钱&#xff1f;比如说周末…

编写程序乘法口诀表C语言,陈广川问:c语言编程九九乘法口诀表 怎样用c语言写九九乘法口诀表?...

怎样用c语言写九九乘法口诀表&#xff1f;哈哈&#xff0c;我刚刚用javascript写好乘法口诀表。C语言&#xff0c;如何编写程序输出九九乘法表。形式如下 ********* ******** ******* ****** ***** **** *** ** *&#xff1f;两个循环&#xff0c;一般用for循环 一个循环控制行…

PHP中文乱码解决办法

一&#xff0e;首先是PHP网页的编码 1. php文件本身的编码与网页的编码应匹配 a. 如果欲使用gb2312编码&#xff0c;那么php要输出头&#xff1a;header(“Content-Type: text/html; charsetgb2312")&#xff0c;静态页面添加<meta http-equiv"Content-T…

python中api_通过Python中的API查找相关的工作技能

python中api工作技能世界 (The World of Job Skills) So you want to figure out where your skills fit into today’s job market. Maybe you’re just curious to see a comprehensive constellation of job skills, clean and standardized. Or you need a taxonomy of ski…

欺诈行为识别_使用R(编程)识别欺诈性的招聘广告

欺诈行为识别背景 (Background) Online recruitment fraud (ORF) is a form of malicious behaviour that aims to inflict loss of privacy, economic damage or harm the reputation of the stakeholders via fraudulent job advertisements.在线招聘欺诈(ORF)是一种恶意行为…

PE文件的感染C++源代码

PE文件的感染C源代码 PE文件规定了可执行文件的格式&#xff0c;凡是符合此格式的文件都能在windows系统上运行。PE文件的格式暂且不谈&#xff0c;说一些感染PE文件的几种途径。 导入表感染。这个涉及比较复杂的操作&#xff0c;首先&#xff0c;要自行写一个dll文件&#x…

c语言实验四报告,湖北理工学院14本科C语言实验报告实验四数组

湖北理工学院14本科C语言实验报告实验四 数组.doc实验四 数 组实验课程名C语言程序设计专业班级 14电气工程2班 学号 201440210237 姓名 熊帆 实验时间 5.12-5.26 实验地点 K4-208 指导教师 祁文青 一、实验目的和要求1. 掌握一维数组和二维数组的定义、赋值和输入输出的方法&a…

c语言宏定义

一. #define是C语言中提供的宏定义命令&#xff0c;其主要目的是为程序员在编程时提供一定的方便&#xff0c;并能在一定程度上提高程序的运行效率&#xff0c;但学生在学习时往往不能理解该命令的本质&#xff0c;总是在此处产生一些困惑&#xff0c;在编程时误用该命令&#…

rabbitmq channel参数详解【转】

1、Channel 1.1 channel.exchangeDeclare()&#xff1a; type&#xff1a;有direct、fanout、topic三种durable&#xff1a;true、false true&#xff1a;服务器重启会保留下来Exchange。警告&#xff1a;仅设置此选项&#xff0c;不代表消息持久化。即不保证重启后消息还在。原…

感染EXE文件代码(C++)

C代码#include <windows.h> #include <winnt.h> #include <stdio.h> #include <assert.h> #define DEBUG 1 #define EXTRA_CODE_LENGTH 18 #define SECTION_SIZE 0x1000 #define SECTION_NAME ".eViLhsU" #define F…

nlp gpt论文_GPT-3:NLP镇的最新动态

nlp gpt论文什么是GPT-3&#xff1f; (What is GPT-3?) The launch of Open AI’s 3rd generation of the pre-trained language model, GPT-3 (Generative Pre-training Transformer) has got the data science fraternity buzzing with excitement!Open AI的第三代预训练语言…

真实不装| 阿里巴巴新人上路指北

新手上路&#xff0c;总想听听前辈们分享他们走过的路。橙子选取了阿里巴巴合伙人逍遥子&#xff08;阿里巴巴集团CEO&#xff09; 、Eric&#xff08;蚂蚁金服董事长兼CEO&#xff09;、Judy&#xff08;阿里巴巴集团CPO&#xff09;的几段分享&#xff0c;他们是如何看待职场…