1.只能输入正负数和小数点(以element-ui为例)
<el-input
placeholder="请输入内容"
v-model="number"
oninput="value=value.replace(/[^\-?\d.]/g,'').replace(/^\./g,'').replace('.','$#$').replace(/\./g,'').replace('$#$','.').replace('-','$#$').replace(/\-/g,'').replace('$#$','-')"
></el-input>
2.只能输入字母和数字
<el-input
v-model="name"
placeholder="请输入"
oninput="value=value.replace(/[^\w]/g,'')"
></el-input>
3.禁止输入空格等特殊字符
<el-input
v-model="editForm.sm"
placeholder="请输入"
clearable
maxlength="250"
@input="e => (editForm.sm = smCheck(e))"
></el-input>
smCheck(val) {
val = val.replace(
// eslint-disable-next-line no-useless-escape
/[`~!@#$%^&*()_\-+=<>?:"{}|,.\/;'\\[\]·~!@#¥%……&*()——\-+={}|《》?:“”【】、;‘’,。、]/g,
''
)
return val
},