vue中elementUI价格校验及正则
<el-form
ref="add"
:rules="rules"
:model="add"
label-width="110px"
>
<el-form-item label="价格:" v-if="add.serviceType!=3" prop="amount">
<input type="text" autocomplete="off" placeholder="请输⼊" v-model="add.amount"class="el-input__inner m_r_20">元 </el-form-item>
</el-form>
rules: {
amount: [
{required: true, message: "请输⼊", trigger: "blur,change"},
{ min: 1, max: 6, message: '长度在 1 到 6 个字符', trigger: 'blur,change' },
{ validator: twoPoint, message: '最多包含两位⼩数的正数且不能为以0开头的正整数', trigger: 'blur' }
],
},
const twoPoint = (rule, value, callback) => {
if(/^\d+\.?\d{0,2}$/.test(value)){
if(value.indexOf('.')=='-1'&&value.length>1&&value.slice(0,1)=='0'){正则匹配正整数
callback(new Error("最多包含两位⼩数的正数且不能为以0开头的正整数"));
}
}else{
callback(new Error("最多包含两位⼩数的正数且不能为以0开头的正整数"));
}
// if (/^(?!0+(?:\.0+)?$)(?:[1-9]\d*|0)(?:\.\d{1,2})?$/.test(value)) {
// callback()
// } else {
// callback(new Error('最多包含两位⼩数的正数'))
// }
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论