js 实现input输入框内数字的小数点前八位后二位数的控制

最近在做一个报价系统,要求金额输入框中限制小数点前面最多8位后面2位小数的控制  如下图:

js 实现input输入框内数字的小数点前八位后二位数的控制

上代码

HTML代码

<input id="creditorScales_v" type="number" onkeyup="clearNoNum(this,5)">

JS代码

// 报价值的整数位数与小数判断
function clearNoNum(obj, digits) {
    var temp = obj.value;
    if (temp < 0) {
        obj.value = "";
        return;
    }
    var posDot = temp.indexOf(".");// 返回指定字符在此字符串中第一次出现处的索引
    if (posDot < 0) {// 不包含小数点
        if (temp.length <= digits) { return;//小于八位数直接返回 } else { if (temp.length > digits) {// 大于八位数就删掉第九位(只会保留八位)
                obj.value = temp.substring(0, digits);
            }
            return;
        }
    }
    var lastDot = temp.lastIndexOf(".");
    if (posDot != lastDot) {
        obj.value = "";
        return;
    }
    // 走到这有小数点
    if (posDot > digits) {
        if (temp.length > digits) {// 大于八位数就删掉第九位(只会保留八位)
            obj.value = temp.substring(0, digits);
        }
        return;
    }
    if (temp.length - posDot - 1 > 2)// 如果包含小数点
    {
        // 删除小数点后的第三位
        obj.value = temp.substring(0, posDot + 3);
    }
}
1. 本站所有免费资源来源于用户上传和网络,因此不包含技术服务请大家谅解!如有侵权请邮件联系客服!
2. 本站不保证所提供下载的免费资源的准确性、安全性和完整性,免费资源仅供下载学习之用!如有链接无法下载、失效,请联系客服处理!
3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
4. 如果您也有好的资源或技术教程,您可以投稿发布,成功分享后有站币奖励和额外收入!
5. 加入前端开发QQ群:565733884,我们大家一起来交流技术!
码云笔记 » js 实现input输入框内数字的小数点前八位后二位数的控制

发表评论

提供最优质的资源集合

立即查看 了解详情