vue、iview、VeeValidate 表单验证完整
1.main.js
- npm install vee-validate --save
- npm install vue-i18n --save
//验证引入
import VeeValidate, { Validator } from 'vee-validate';
import zh_CN from 'vee-validate/dist/locale/zh_CN';
import messages from './libs/dist/locale/zh_CN.js';
Validator.addLocale(zh_CN);
Validator.updateDictionary({
zh_CN: {
messages
}
});
2.html
<div class="layui-tab-item layui-show">
<div class="layui-form-item">
<label class="layui-form-label">项目名称<em class="x">*</em></label>
<div class="layui-input-block">
<input type="text" name="project" autocomplete="off" class="layui-input" v-validate="'required|project|max:50'" placeholder="请输入项目名称">
<span class="errortip" v-show="errors.has('form-1.project')">{{ errors.first('form-1.project')}}</span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">对方账号<em class="x">*</em></label>
<div class="layui-input-block">
<input type="text" value="" name="other_phone" autocomplete="off" class="layui-input cyl_required" v-validate="'required|other_phone'" placeholder="请输入对方账号">
<span class="errortip" v-show="errors.has('form-1.other_phone')">{{ errors.first('form-1.other_phone')}}</span>
</div>
</div>
<input type="hidden" name="other_id" value="123456000" />
<div class="layui-form-item">
<label class="layui-form-label">对方公司*</label>
<div class="layui-input-block">
<input placeholder="请输入对方公司" type="text" name="other_company_name" autocomplete="off" class="layui-input">
<span class="errortip" v-show="errors.has('form-1.other_company_name')">{{ errors.first('form-1.other_company_name')}}</span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">对方联系人姓名<em class="x">*</em></label>
<div class="layui-input-block">
<input value="" placeholder="请输入对方联系人姓名" type="text" name="other_name" autocomplete="off" class="layui-input" v-validate="'required|other_name|max:50'">
<span class="errortip" v-show="errors.has('form-1.other_name')">{{ errors.first('form-1.other_name')}}</span>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">金额<em class="x">*</em></label>
<div class="layui-input-block">
<input value="" placeholder="请输入金额" type="text" name="money" autocomplete="off" class="layui-input" v-validate="'required|money|max:13'">
<span class="errortip" v-show="errors.has('form-1.money')">{{ errors.first('form-1.money')}}</span>
</div>
</div>
</div>
3.js
created() {
// 自定义validate
//设置require提示的name值改为入文字
const dictionary = {
zh_CN: {
messages: {
required: ( field )=> field + "不能为空"
},
attributes:{
project:'项目名称',
other_phone:'对方账号',
other_name: '对方联系人姓名',
money: '金额',
order_type:'订单属性'
}
}
};
Validator.updateDictionary(dictionary);
Validator.extend('phone', {
messages: {
zh_CN: field => field + '必须是11位手机号码',
},
validate: value => {
return value.length == 11 && /^((13|14|15|17|18)[0-9]{1}\d{8})$/.test(value)
}
});
Validator.extend('project', {
messages: {
zh_CN:field => field + '输入格式不正确',
},
validate: (value) => {
return value.length;
}
}),
Validator.extend('other_phone', {
messages: {
zh_CN:field => field + '手机号格式不正确',
},
validate: (value) => {
return value.length == 11 && /^((13|14|15|17|18)[0-9]{1}\d{8})$/.test(value)
}
});
Validator.extend('other_name', {
messages: {
zh_CN:field => field + '输入格式不正确',
},
validate: (value) => {
return value.length;
}
});
Validator.extend('money', {
messages: {
zh_CN:field => field + '输入金额格式不正确',
},
validate: (value) => {
//value.length >= 13 &&
return /^[0-9]+(.[0-9]{2})?$/.test(value)
}
});
},
validateForm(scope) {
this.$validator.validateAll(scope).then((result) => {
if (result) {
} else{
}
});
}
vue、iview、VeeValidate 表单验证完整的更多相关文章
- vue validate多表单验证思考 之前写过一个里外层,现在觉得不合适,应该平行的写,然后都给ret,最后判断ret 再做出反应,这样整体表单的所有验证就都报验证,然后最后提交的时候把组件内的对象合并到总的对象,再提交
vue validate多表单验证思考 之前写过一个里外层,现在觉得不合适,应该平行的写,然后都给ret,最后判断ret 再做出反应,这样整体表单的所有验证就都报验证,然后最后提交的时候把组件内的对象 ...
- vue+element 动态表单验证
公司最近的项目有个添加动态表单的需求,总结一下我在表单验证上遇到的一些坑. 如图是功能的需求,这个功能挺好实现的,但是表单验证真是耗费了我一些功夫. vue+element在表单验证上有一些限制,必须 ...
- Vue如何使用vee-validate表单验证
Vue项目遇到要表单验证了吧,对我来说表单验证是个很纠(dan)结(teng)的内容,各种判断凌乱到飞起.往常使用jquery的validate插件做表单验证方便吧,你也可以在Vue里引入jquery ...
- vue elementui form表单验证
最近我们公司将前端框架由easyui 改为 vue+elementui .自学vue两周 就开始了爬坑之路.业余时间给大家分享一下心得,技术新手加上第一次分享(小激动),有什么不足的地方欢迎大家指正, ...
- Vue中Form表单验证无法消除验证问题
iView的表单api给出了一个resetFields方法,用于重置整个表单输入的内容并清除验证提示. 但是有时候需要只消除部分的iview的resetFields方法源码是这样的resetField ...
- vue 常用的表单验证,包括手机号码,固定电话和身份证...
<template> <div> <pl-content-box> <pl-page-nav :show-previous=true></pl-p ...
- vee-validate表单验证组件
vee-validate是VUE的基于模板的验证框架,允许您验证输入并显示错误 安装 npm i vee-validate --save 引入 import Vue from 'vue'; impor ...
- vue中的表单验证
http://www.cnblogs.com/luoxuemei/p/9295506.html /*是否合法IP地址*/ export function validateIP(rule, value, ...
- vue element-UI Form表单验证
摘自官网 https://element.eleme.cn/#/zh-CN/component/form 保证prop的值等于v-model的值,并且初始化值,这样验证才好使. 可以自定义验证 < ...
- 使用vee-validate表单验证插件如何设置中文提示
版本: vee-validate v3.x设置如下: import * as rules from 'vee-validate/dist/rules'; import zh_CN from 'vee- ...
随机推荐
- Vue 快速入门(一)
1.介绍 Vue(读音/vju/,类似view),是中国的大神尤雨溪开发的,为数不多的国人开发的世界顶级开源软件.是一套用于构建用户界面的渐进式框架,Vue 被设计为可以自底向上逐层应用.MVVM响应 ...
- Echarts 折线图Demo调色12种,可以直接使用~~~
测试Demo代码~~ <template> <div> <div id="myChart" ref="mapBox" style= ...
- SSM中PageHelper的使用方法
SSM中PageHelper的使用方法 转载于for dream 第一步.导包(或者导入坐标) <!-- https://mvnrepository.com/artifact/com.githu ...
- vulnhub靶场之MOMENTUM: 2
准备: 攻击机:虚拟机kali.本机win10. 靶机:Momentum: 2,下载地址:https://download.vulnhub.com/momentum/Momentum2.ova,下载后 ...
- 一个容器,但是一整个k8s集群
你可能需要一个快速启动和销毁的 k8s 集群:你可能在资源受限的环境中运行 k8s 集群:你可能是一个完全的初学者,觉得搭建完整的 k8s 套件太难.那么这篇短文可能可以帮到你. 各种丐版 k8s 集 ...
- python3中,isinstance() 函数
#isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type(). #返回值:如果对象的类型与参数二的类型相同则返回True,否则返回False 使用isinstance函数的实 ...
- Javascript中0.1+0.2===0.3?怎么解决这个问题?
一.问题分析 计算机存储以二进制的方式,而0.1 在二进制中是无限循环的一个数字,所以会出现裁剪,精度丢失会出现,0.100000000000000002 === 0.1,0.200000000000 ...
- 华为云API Arts:用“1+1+5”的模式,为你带来API-First体验
摘要:华为云API Arts是API全生命周期一体化协作平台,支持开发者一站式高效实现API设计.API开发.API测试.API托管.API运维.API变现,助力企业数字化转型. 本文分享自华为云社区 ...
- 获取某地模型并用Cesium加载(一)
2023-01-04 最近想用Cesium给学校做一个类似智慧校园的东西,要做的东西很多,首先是获取学校模型的问题,然后怎么用Cesium加载3Dtile 1.获取学校模型 想到之前被老师抓苦力去做春 ...
- Cobalt Strike 之:会话管理
郑重声明: 本笔记编写目的只用于安全知识提升,并与更多人共享安全知识,切勿使用笔记中的技术进行违法活动,利用笔记中的技术造成的后果与作者本人无关.倡导维护网络安全人人有责,共同维护网络文明和谐. Co ...