vue输入两位小数自定义指令
javascript
1/* 2 * Auth: WANGJIAN 3 */ 4directives:{ 5 Float:{ 6 inserted: function (el) { 7 let trigger = (el, type) => { 8 const e = document.createEvent('HTMLEvents') 9 e.initEvent(type, true, true) 10 el.dispatchEvent(e) 11 } 12 13 el.addEventListener("keyup", function (e) { 14 let input = e.target; 15 let reg = new RegExp('^((?:(?:[1-9]{1}\\d*)|(?:[0]{1}))(?:\\.(?:\\d){0,2})?)(?:\\d*)?$'); //正则验证是否是数字(小数整数均可) 16 let matchRes = input.value.match(reg); 17 if (matchRes === null) { 18 input.value = ""; 19 } else { 20 //matchRes[0]是匹配的无限位的小数 21 //matchRes[1]是小数点后两位前面符合的数值 22 //如输入12.223 matchRes[0]是12.223 matchRes[1]12.22 此时input值改为matchRes[1]的值即可 23 if (matchRes[1] !== matchRes[0]) { 24 input.value = matchRes[1]; 25 } 26 } 27 trigger(input, 'input') 28 }); 29 } 30 } 31 32}, 33
阅读量:1615发布日期:2021-06-11 16:45:06
博客描述
vue自定义指令,限制输入小数,保留两位,常用于金额输入...