您当前的位置: 首页 > 

暂无认证

  • 0浏览

    0关注

    92582博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

input输入框,控制只能输入两位小数点、输入价格(原生)

发布时间:2021-12-13 15:02:28 ,浏览量:0

目录
  • 1、html部分
  • 2、JavaScript部分
  • 3、效果演示
1、html部分
<input type="text" name="je" onkeyup="priceInput(this)" /> 
2、JavaScript部分
function priceInput(obj) { // 清除数字和点以外的字符 obj.value = obj.value.replace(/[^\d.]/g, ""); // 验证第一个字符是否是数字,也就是是第一个字符不能是点 obj.value = obj.value.replace(/^\./g, ""); // 只保留第一个点, 清除多余的点 obj.value = obj.value.replace(/\.{2,}/g, "."); obj.value = obj.value.replace(".", "$#$").replace(/\./g, "").replace("$#$", "."); // 只能输入两个小数 obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); // 此处控制的是如果没有小数点,首位不能为0,类似于01、02的金额 if (obj.value.indexOf(".") < 0 && obj.value != "") { if (obj.value.substr(0, 1) == '0' && obj.value.length == 2) { obj.value = parseFloat(obj.value); } } else { // 此处控制的是如果有小数点,整数如果大于等于两位,第一位不能为0,类似于01.16、02.77的金额 let val = obj.value, beforePoint = val.split('.')[0], afterPoint = val.split('.')[1]; if (beforePoint.length >= 2 && beforePoint[0] == 0) { obj.value = `${beforePoint.substring(1)}.${afterPoint}`; } } } 
3、效果演示

小程序码

2.0.0X

普通二维码

2.0.0P

关注
打赏
1653961664
查看更多评论
立即登录/注册

微信扫码登录

0.6515s