vue+elementui限制input输入框输入内容的正则表达式
1.限制只能输入数字,英文<input v-model="num" type="text" :change="check_num()" placeholder="请输入">check_num (){this.num = this.num.replace(/[^\a-\z\A-\Z0-9]/g, '');}2.限制只能输入正整数[例如:天数]<input v-model="num"
·
1.限制只能输入数字,英文
<input v-model="num" type="text" :change="check_num()" placeholder="请输入">
check_num (){
this.num = this.num.replace(/[^\a-\z\A-\Z0-9]/g, '');
}
2.限制只能输入正整数[例如:天数]
<input v-model="num" type="text" :change="check_num()" placeholder="请输入">
check_num (){
let num = this.num;
num = num.replace(/[^\d]/g, ''); // 清除“数字”和“.”以外的字符
if (num.indexOf('.') < 0 && num != '') {
// 以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额
num = parseInt(num);
}
this.num = num;
}
3.限制价格只能输入数字,且最多两个小数[例如:价格]
<input v-model="price" type="text" :change="check_price()" placeholder="请输入">
check_price (){
let price = '' + this.price;
price = price
.replace(/[^\d.]/g, '') // 清除“数字”和“.”以外的字符
.replace(/\.{2,}/g, '.') // 只保留第一个. 清除多余的
.replace('.', '$#$')
.replace(/\./g, '')
.replace('$#$', '.')
.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); // 只能输入两个小数
if (price.indexOf('.') < 0 && price != '') {
// 以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额
price = parseFloat(price);
}
this.price = price;
}
4.限制只能输入数字,英文, 中文,下划线
<input v-model="num" type="text" :change="check_num()" placeholder="请输入">
check_num (){
this.num = this.num.replace(/[^\a-\z\A-\Z0-9\u4e00-\u9fe5_]/g, '');
}
5.要求:天数为正整数
<el-input v-model="wxjts" placeholder="天数" :change="check_wxjts()" onKeypress="return(/[\d]/.test(String.fromCharCode(event.keyCode)))"/>
// 限制
check_wxjts: function () {
let price = '' + this.wxjts
price = price
.replace(/[^\d.]/g, '') // 清除“数字”和“.”以外的字符
.replace(/\.{2,}/g, '.') // 只保留第一个. 清除多余的
.replace('.', '$#$')
.replace(/\./g, '')
.replace('$#$', '.')
.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3') // 只能输入两个小数
if (price.indexOf('.') < 0 && price != '') {
// 以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额
price = parseFloat(price)
}
this.wxjts = price
}
更多推荐
已为社区贡献1条内容
所有评论(0)