首页  >  文章  >  web前端  >  单行 JS 实现移动端金钱格式检验

单行 JS 实现移动端金钱格式检验

Y2J
Y2J原创
2017-05-23 13:20:151646浏览

这篇文章主要介绍了单行 JS 实现移动端金钱格式的输入规则,非常不错,具有参考借鉴价值,需要的朋友可以参考下

金钱格式检验属于很普通的需求,记得工作中第一次遇到这个需求的时候,还不太会写正则表达式,搜到了一个类似的解决方案,看着正则的文档改成了自己需要的形式。

但是用户的输入操作是任意的,只是显示提示信息,这种方式虽然可以满足要求,但是感觉不友好。

其实移动端的很多应用在输入金钱时都是屏蔽错误输入,只能输入正确的格式。先看一看金钱格式的输入规则有哪些:

1. 不能输入空白字符及字母
2. 只能输入数字及小数点
3. 首位不能为小数点
4. 小数点只能出现一次
5. 小数点后只有两位
6. 不能输入首位是 0 的多位数

 看似很简单的问题,其实要考虑的很周全才可以。但是代码可以写的很简洁,我费了不少心思摸索出来的。对于校验部分确实只需要一行


function moneyFormat(str) {
  return str.replace(/[^\d\.]|^\./g, '').replace(/\.{2}/g, '.').replace(/^([1-9]\d*|0)(\.\d{1,2})(\.|\d{1})?$/, '$1$2').replace(/^0\d{1}/g, '0');
}

时间不早了,就写这么多吧,最后贴上我在 CodePen 写的 Demo,希望能帮到有需要的人。

【相关推荐】

1. Javacript免费视频教程

2. bootstrap手风琴折叠的教程详解

3. bootstrap模态框远程实例详解

4. JS实现marquee滚动效果的实例详解

5. JS制作QQ聊天消息展示和评论提交功能的代码示例

以上是单行 JS 实现移动端金钱格式检验的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn