正则表达式:
@input="form.userName = form.userName.replace(/\s+/g,'')" ( 禁止输入空格)
@input="form.phone = form.phone.replace(/[^\d]/g, '')" ( 只能输入数字 )
@input="form.name = form.name.replace(/[^\u4e00-\u9fa5]/g, '')" (禁止输入数字)
var reg = /^[_a-zA-Z0-9]/ //匹配 下划线 英语字母 或者 数字开头,满足其中之一
// 校验 input 只能输入小数点后一位 =》 this.updateData.scoreCeil 是你要保留小数的 字段 this.updateData.scoreCeil = this.updateData.scoreCeil.replace(/[^\d.]/g,""); //清除“数字”和“.”以外的字符 this.updateData.scoreCeil = this.updateData.scoreCeil.replace(/\.{2,}/g,"."); //只保留第一个. 清除多余的 this.updateData.scoreCeil = this.updateData.scoreCeil.replace(".","$#$").replace(/\./g,"").replace("$#$","."); this.updateData.scoreCeil = this.updateData.scoreCeil.replace(/^(\-)*(\d+)\.(\d).*$/,'$1$2.$3');//只能输入两个小数 \d 代表一个小数, \d\d 代表保留俩位小数 if(this.updateData.scoreCeil.indexOf(".")< 0 && this.updateData.scoreCeil !=""){//以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额 this.updateData.scoreCeil= parseFloat(this.updateData.scoreCeil); }
备注: this.addData.content 是 富文本框的绑定的参数,不需要做任何处理。
var contents = '' contents = this.addData.content.replace(/<[^>]+>/g, "") if( contents == '' ){ this.$message.error("留言不能为空") return } if(contents.length < 10 ){ this.$message.error("留言字数不能小于十个字") return } if( contents.length < 10 ){ if( contents.indexOf(',') != -1 || this.addData.content.indexOf(',') != -1 ){ this.$message.error("输入字数十个字的时候不能包含逗号") return } }
var contents2 = /([^u4E00-u9FA5])\1{2}/g; //不能连续输入三个相同的字符,包括大小写英文字母 if( contents.toLowerCase().match(contents2) != null ){ this.$message.error("不能连续输入三个相同的字符") return }
只能数字加英文
<input @input="value=value.replace(/[^\w\.\/]/ig,'')"> //包含点 <input @input="value=value.replace(/[^\w\/]/ig,'')"> //不包含点
// 去除特殊符号,包括空格
var contents11 = 放你自己的变量.replace(/[`~!@#$^\-&*()=|{}':;',\\\[\]\.<>\/?~!@#¥……&*()——|{}【】';:""'。,、?\s]/g, "");
//身份证校验
var cardRule = /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/