一、新建inputFilter.js , 过滤方法,obj为要改的对象,key为obj的字符串键
exports.install = function (Vue, options) {
//过滤0到9、a到F的字符
Vue.prototype.F_09aF = function (obj, key) {
fileterData(obj, key, new RegExp("[(0-9|a-f|A-F)]"));
};
//过滤除数字和英文以外的字符
Vue.prototype.F_isNumAEn = function (obj, key) {
fileterData(obj, key, new RegExp("[0-9A-z]"));
}
//过滤除数字和.以外的字符
Vue.prototype.F_isNumASpot = function (obj, key) {
fileterData(obj, key, new RegExp("[(0-9|\.)]"));
}
//过滤除数字以外的字符
Vue.prototype.F_isNum = function (obj, key) {
fileterData(obj, key, new RegExp("[(0-9)]"));
}
};
//过滤数据
function fileterData(obj, key, re) {
let v = obj[key].trim(), s = '', r = re;
if (v == null || v == "" || v == undefined) {
return;
}
for (let i in v) {
if (r.test(v[i])) {
s += v[i];
}
}
obj[key] = s;
}
二、在main.js 引入
import inputFilter from "./utils/inputFilter"
Vue.use(inputFilter)
三、在input标签使用@input
<el-input @input="F_isNum(from,'customerPhone')" v-model="from.customerPhone" placeholder="联系方式" maxlength="11" ></el-input>