概述
首先拿到输入框的值。
方法一:
思路:直接正则匹配
var val = $(this).val();
val = val.replace(/[^d.]/g,"");
//清除“数字”和“.”以外的字符
val = val.replace(/.{2,}/g,"."); //只保留第一个. 清除多余的
val = val.replace(".","$#$").replace(/./g,"").replace("$#$",".");
val = val.replace(/^(-)*(d+).(dd).*$/,'$1$2.$3');//只能输入两个小数
if(val.indexOf(".")< 0 && val !=""){//以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额
val = parseFloat(val);
}
$(this).val(val)
方法二:
思路:表面让用户一个输入框输入,然后将值取出来放到input的type='number'类型里过滤下(这里是隐藏的),这样的值取出来是一个数字,再取出来判断大于0,再渲染到用户输入的框即可。如果不大于0,为空。
最后
以上就是聪慧皮皮虾为你收集整理的js关于金额输入框正则匹配问题的全部内容,希望文章能够帮你解决js关于金额输入框正则匹配问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复