vue element-ui实现input输入框金额数字添加千分位


Posted in Javascript onDecember 29, 2019

在util.js中定义方法

包含金额添加过滤千分位,验证金额格式等

const MoneyTest = /((^[1-9]\d*)|^0)(\.\d{0,2}){0,1}$/;
// 金额添加千分位
const comdify = function (n) {
  if(!n) return n;
  let str = n.split('.');
  let re = /\d{1,3}(?=(\d{3})+$)/g;
  let n1 = str[0].replace(re, "$&,");
  return str.length > 1 && str[1] ? `${n1}.${str[1]}` : `${n1}.00`;
};
//去除千分位中的‘,'
const delcommafy = function (num){
  if(!num) return num;
  num = num.toString();
  num = num.replace(/,/gi, '');
  return num;
};
const valdateFn = function (rule,val,cb) {
  setTimeout(() => {
    if(val) {
      let inputVal = delcommafy(val);
      if (rule.test(inputVal)) {
        cb()
      } else {
        cb('只能是数字金额,最多两位小数')
      }
    }
    cb()
  })
}
// 验证金额数字可以为负数
const moneyValid = function (rule,val,cb) {
  valdateFn(/((^-?[1-9]\d*)|^-?0)(\.\d{0,2}){0,1}$/,val,cb);
};
// 验证金额数字不可以为负数
const moneyNValid = function (rule,val,cb) {
  valdateFn(MoneyTest,val,cb);
};
// 获取输入框的值
const getInputValue = function (el) {
  let inputVal = el.target.value || '';
  return comdify(delcommafy(inputVal));
};

在组件中使用

在template中

<el-input v-model.trim="form.pastAdjustFee" @blur="inputMoney($event,'pastAdjustFee')"></el-input>

在methods中定义

data(){
 return {
 form:{
  pastAdjustFee:''
 }
 }
}
methods:{
 inputMoney(el,name) {
     this.form[name] = getInputValue(el);
   }
}

总结

以上所述是小编给大家介绍的vue element-ui实现input输入框金额数字添加千分位,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
javaScript对象和属性的创建方法
Jan 15 Javascript
jquery text,radio,checkbox,select操作实现代码
Jul 09 Javascript
获取表单控件原始(初始)值的方法
Aug 21 Javascript
javascript实现在网页中运行本地程序的方法
Feb 03 Javascript
解决Vue页面固定滚动位置的处理办法
Jul 13 Javascript
通过js控制时间,一秒一秒自己动的实例
Oct 25 Javascript
解决Vue2.x父组件与子组件之间的双向绑定问题
Mar 06 Javascript
原生实现一个react-redux的代码示例
Jun 08 Javascript
javascript严格模式详解(含严格模式与非严格模式的区别)
Nov 12 Javascript
Angular8引入百度Echarts进行图表分析的实现代码
Nov 27 Javascript
js实现左右轮播图
Jan 09 Javascript
JavaScript如何实现图片处理与合成
May 29 Javascript
jstree中的checkbox默认选中和隐藏示例代码
Dec 29 #Javascript
Vue组件通信入门之Provide和Inject机制
Dec 29 #Javascript
JS中数组实现代码(倒序遍历数组,数组连接字符串)
Dec 29 #Javascript
如何基于JavaScript判断图片是否加载完成
Dec 28 #Javascript
Vue页面刷新记住页面状态的实现
Dec 27 #Javascript
uni-app 组件里面获取元素宽高的实现
Dec 27 #Javascript
Vue中axios拦截器如何单独配置token
Dec 27 #Javascript
You might like
《心理测量者3》剧场版动画预告
2020/03/02 日漫
PHP base64+gzinflate压缩编码和解码代码
2008/10/03 PHP
PHP 读取Postgresql中的数组
2013/04/14 PHP
CI框架中zip类应用示例
2014/06/17 PHP
WordPress中编写自定义存储字段的相关PHP函数解析
2015/12/25 PHP
PHP多进程简单实例小结
2019/11/09 PHP
使用jQuery操作Cookies的实现代码
2011/10/09 Javascript
jQuery 开发者应该注意的9个错误
2012/05/03 Javascript
Node.js的包详细介绍
2015/01/14 Javascript
在Linux系统中搭建Node.js开发环境的简单步骤讲解
2016/01/26 Javascript
jQuery学习心得总结(必看篇)
2016/06/10 Javascript
AngularJS 单元测试(一)详解
2016/09/21 Javascript
在小程序Canvas中使用measureText的方法示例
2018/10/19 Javascript
vue回到顶部监听滚动事件详解
2019/08/02 Javascript
详解在vue-cli3.0中自定css、js和图片的打包路径
2019/08/26 Javascript
深入理解webpack process.env.NODE_ENV配置
2020/02/23 Javascript
解决vue2中使用elementUi打包报错的问题
2020/09/22 Javascript
python求列表交集的方法汇总
2014/11/10 Python
使用Python的Bottle框架写一个简单的服务接口的示例
2015/08/25 Python
python版本的读写锁操作方法
2016/04/25 Python
python分割列表(list)的方法示例
2017/05/07 Python
解决Keras自带数据集与预训练model下载太慢问题
2020/06/12 Python
LA MER海蓝之谜美国官网:传奇面霜
2016/08/27 全球购物
惊艳的手工时装首饰:Migonne Gavigan
2018/02/23 全球购物
Unix如何添加新的用户
2014/08/20 面试题
趣味游戏活动方案
2014/02/07 职场文书
消防先进事迹材料
2014/02/10 职场文书
认识深刻的检讨书
2014/02/16 职场文书
幼儿园家长安全责任书
2014/07/22 职场文书
县政府班子个人对照检查材料
2014/10/05 职场文书
学生检讨书如何写
2014/10/30 职场文书
思想道德自我评价2015
2015/03/09 职场文书
宇宙与人观后感
2015/06/05 职场文书
贷款收入证明格式
2015/06/24 职场文书
2015年乡镇食品安全工作总结
2015/10/22 职场文书
Python读取和写入Excel数据
2022/04/20 Python