Elementui el-input 输入框校验以和校验表单校验
一. 常用的 element-ui el-input 输入框
1. 过滤字母e,在js中属于数字,但是正则表达式 \d 是拦不住字母e 的
<el-input type="number" placeholder="请输入" min="1" onKeypress="return (/[\d]/.test(String.fromCharCode(event.keyCode || event.which))) || event.which === 8" v-model.number="count"></el-input>
2. 只能输入正整数
<el-input type="number" placeholder="请输入" min="1" oninput ="value=value.replace(/[^\d]/g,'')" v-model.number="count"></el-input>
3. 只允许输入数字和小数 / 数字和空格
-
oninput ="value=value.replace(/[^0-9.]/g,'')"
-
oninput ="value=value.replace(/^[\d\s] $/g,'')"
4. 只允许输入正整数且不能以0开头
-
<el-input
-
v-model="scope.row.weight"
-
oninput="value = Number(value) || 0"
-
>
5. 允许输入小数点后几位
-
// 保留一位小数
-
oninput="if(isNaN(value)) { value = parseFloat(value) } if(value.indexOf('.')>0){value=value.slice(0,value.indexOf('.') 2)}"
-
-
// 若需要保留N位小数,则把2 改为 1 n即可
6. 设置范围,最大值,最小值
-
<el-input min="0" max="100" type="number" @input="numberChange($event, 100)" @change="numberChange($event, 100)" onKeypress="return (/[\d]/.test(String.fromCharCode(event.keyCode || event.which))) || event.which === 8" v-model.number="count"></el-input>
-
-
numberChange (val, max) {
-
this.$nextTick(() => {
-
this.count = Math.min(parseInt(val), max)
-
})
-
}
7. form 表单校验输入框只能输入数字和两位小数
-
rules: {
-
giveHour: [
-
{ required: true, message: '请输入客户退费金额', trigger: 'blur' },
-
{ pattern: /(^[1-9]([0-9] )?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/, message: '请输入正确额格式,可保留两位小数' }
-
]
-
}
8. 禁止输入中文
onkeyup="this.value=this.value.replace(/[\u4E00-\u9FA5]/g,'')"
9. 常见表单校验
-
// utils.js
-
-
// 全局函数
-
export function validateMobile(str) {
-
// 检查手机号码格式
-
return /^((13[0-9])|(14[5-9])|(15([0-3]|[5-9]))|(16[6-7])|(17[1-8])|(18[0-9])|(19[1|3])|(19[5|6])|(19[8|9]))\d{8}$/.test(
-
str,
-
);
-
}
-
-
export function validateEmail(str) {
-
// 检查邮箱格式
-
return /^([A-Za-z0-9_\-.]) @([A-Za-z0-9_\-.]) \.([A-Za-z]{2,4})$/.test(str);
-
}
-
-
export function validatePhone(str) {
-
// 检查电话格式
-
return /^(0\d{2,4}-)?\d{8}$/.test(str);
-
}
-
-
export function validateQQ(str) {
-
// 检查QQ格式
-
return /^[1-9][0-9]{4,}$/.test(str);
-
}
-
-
// 检查验证码格式
-
export function validateSmsCode(str) {
-
return /^\d4$/.test(str);
-
}
10. 输入非数字组合(登录账号6-16位)
-
// 非纯数字非纯字母 /^(?![0-9] $)[0-9A-Za-z|a-zA-Z]{6,16}$/
-
let userNameReg = /^(?![0-9] $)[0-9A-Za-z|a-zA-Z]{6,16}$/;
-
if (!userNameReg.test(form.userName)) {
-
this.$message.warning('请输入6-16位的非纯数字登录账号~');
-
return false;
-
}
11. 只允许输入数字和英文
-
<el-input
-
v-model.trim="form.userNumber"
-
placeholder="请输入用户编号"
-
clearable
-
onkeyup="this.value=this.value.replace(/[^\w]/g,'')"
-
></el-input>
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgghhci
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13