vue中input文本框只能输入中文,正整数, 密码输入规则等

407 阅读1分钟

文本

<input
    v-model="meetingname"
    shape="round"
    background="#f7f8fa"
    @keyup.native="inputChange($event)" 
    @keydown.native="inputChange($event)"
    placeholder="请输入关键字查询"
/>

只能属入正整数

<el-input v-model="myNumber" oninput="value=value.replace(/^(0+)|[^\d]+/g,'')" />


js-----
```
inputChange(e) {
    const val = e.target;
    val.value = val.value.replace(/[^\u4E00-\u9FA5]/g, '');
    this.meetingname = val.value;
},
```
原文地址:https://www.cnblogs.com/wangyuxue/p/11813686.html

密码框:必须包含数字和字母6-18位,可以特殊字符
````
password = '123456zzz'
let pwdRegex = /^((?=.*\d)(?=.*[a-z])|(?=.*[A-Z])(?=.*[a-z])|(?=.*[A-Z])(?=.*\d)).{6,18}$/;
if (!pwdRegex.test(password)){
    callback(new Error('大写字母、小写字母、数字三类中至少两类'));
}
````
校验手机号
````
num = '13312341234'
let pwdRegex = /^((1[3,4,5,6,7,8,9][0-9]))\d{8}$/;
if (!pwdRegex.test(num)){
    callback(new Error('手机格式不正确'));
}