<template>
<el-form :model="form" label-width="115px" ref="form" :rules="rules" label-position="left">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="同期最大购买数" prop="pkspace_num">
<el-input v-model="form.pkspace_num" auto-complete="off" clearable></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="价格" prop="price" >
<el-input v-model="form.price" auto-complete="off" clearable><template slot="append">{{price_txt}}</template></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="C端最大折扣率" prop="c_disrate">
<el-input v-model="form.c_disrate" auto-complete="off" clearable></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</template> <script>
export default {
name: "creatRent",
data(){
let patter = /((^[1-9]\d*)|^0)(\.\d{0,2}){0,1}$/;
let isNumber = (rule, value, callback) => {
if (!patter.test(value)) {
return callback(new Error('必须非负整数或至多保留两位小数'))
} else {
callback()
}
};
let percent = /^(?:[1-9]?\d|100)$/;
let isPercent = (rule, value, callback) => {
if (!percent.test(value)) {
return callback(new Error('请输入0-100的整数'))
} else {
callback()
}
};
let num = /^(0|\+?[1-9][0-9]*)$/;
let isNum = (rule, value, callback) => {
if (!num.test(value)) {
return callback(new Error('请输入非负整数'))
} else {
callback()
}
};
return {
form: {
pkspace_num: '',
price:'',
c_disrate:'',
},
rules: {
pkspace_num: [
{ required: true, message: '同期最大购买数不能为空', trigger: 'blur' },
{ min: 1, max: 5, message: '长度在 1 到 5 个字符', trigger: 'blur' },
{ validator:isNum}
],
price: [
{ required: true, message: '价格不能为空',trigger: 'blur' },
{ min: 1, max: 8, message: '长度在 1 到 8 个字符', trigger: 'blur' },
{ validator:isNumber}
],
c_disrate: [
{ required: true, message: 'C端最大折扣率不能为空', trigger: 'blur' },
{ min: 1, max: 3, message: '长度在 1 到 3 个字符', trigger: 'blur' },
{ validator:isPercent}
],
}, }
}, }
</script>

  

vue+element 正则表达式进行表单验证的更多相关文章

  1. vue+element之多表单验证

    方法一:利用promise var p1=new Promise(function(resolve, reject) { this.$refs[form1].validate((valid) => ...

  2. Vue+Element的动态表单,动态表格(后端发送配置,前端动态生成)

    Vue+Element的动态表单,动态表格(后端发送配置,前端动态生成) 动态表单生成 ElementUI官网引导 Element表单生成 Element动态增减表单,在线代码 关键配置 templa ...

  3. Vue如何使用vee-validate表单验证

    Vue项目遇到要表单验证了吧,对我来说表单验证是个很纠(dan)结(teng)的内容,各种判断凌乱到飞起.往常使用jquery的validate插件做表单验证方便吧,你也可以在Vue里引入jquery ...

  4. vue 中跨组件的表单验证

    使用的是element写的,里面提供了表单验证. 子组件是这样的 <template> <div> <el-form :model="value" r ...

  5. Vue 使用 vuelidate 实现表单验证

    表单验证的应用场景十分广泛,因为网站对用户输入内容的限制是非常必要的. 在vue中,我们使用vuelidate方便地实现表单验证. 官方文档在这里https://monterail.github.io ...

  6. JS判断字符串长度,结合element el-input el-form 表单验证(英文占1个字符,中文汉字占2个字符)

    首先看看判断字符串长度的几种方法(英文占1个字符,中文汉字占2个字符) 方法一: function strlen(str) { var len = 0; for (var i = 0; i < ...

  7. vue问题六:表单验证

    表单验证规则 查看文档:https://blog.csdn.net/weixin_42018790/article/details/80762149 1). el-form增加 :rules=&quo ...

  8. vue + element ui 阻止表单输入框回车刷新页面

    问题 在 vue+element ui 中只有一个输入框(el-input)的情况下,回车会提交表单. 解决方案 在 el-form 上加上 @submit.native.prevent 这个则会阻止 ...

  9. 封装Vue Element的form表单组件

    前两天封装了一个基于vue和Element的table表格组件,阅读的人还是很多的,看来大家都是很认同组件化.高复用这种开发模式的,毕竟开发效率高,代码优雅,逼格高嘛.虽然这两天我的心情很糟糕,就像& ...

随机推荐

  1. go语言打造p2p网络

    传送门: 柏链项目学院 就像1000个人眼中有1000个哈姆雷特一样,每个人眼中的区块链也是不一样的!作为技术人员眼中的区块链就是将各种技术的融合,包括密码学,p2p网络,分布式共识机制以及博弈论等. ...

  2. 如何自己制作CHM电子书?

    软件介绍: EasyCHM 非常适合个人和单位制作高压缩比的有目录.索引,同时具有全文检索及高亮显示搜索结果的网页集锦.CHM格式的帮助文件.专业的产品说明书.公司介绍.文章集锦.CHM电子书等等. ...

  3. fastjson SerializerFeature详解

  4. SharpZipLib压缩解压的使用

    项目中使用 Velocity 将模板和生成的动态内容(HTML.XML等)合并保存到redis数据库中,考虑到压缩的文件容量会比较小,方便传输而且存储所使用的空间也会比较小,所以要压缩一下,读取的时候 ...

  5. golang 日期时间处理

    package main import ( "fmt" "time" ) func main() { fmt.Println(time.Now()) //显示时 ...

  6. iOS CATransition 自定义转场动画

    https://www.jianshu.com/p/39c051cfe7dd CATransition CATransition 是CAAnimation的子类(如下图所示),用于控制器和控制器之间的 ...

  7. js 简单弹框toast

    新建toast.js文件 function Toast(msg,duration){ duration=isNaN(duration)?3000:duration; var m = document. ...

  8. vue各种插件汇总

    https://blog.csdn.net/wh8_2011/article/details/80497620(copy) Vue是什么? Vue.js(读音 /vjuː/, 类似于 view) 是一 ...

  9. vue中watch检测到不到对象属性的变化的解决方法

    watch: { option: { handler(newVal) { console.log(newVal); }, deep: true, immediate: true } }, 需要深层wa ...

  10. 【Linux】Linux主要目录以及说明

    主要目录以及说明: /:根目录,位于Linux文件系统目录结构的顶层,一般根目录下只存放目录,不要存放文件,/etc./bin./dev./lib./sbin应该和根目录放置在一个分区中. /bin, ...