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

本文介绍了一种在HTML表单中实现对金额输入框的数值限制的方法,确保输入的数值整数部分不超过8位,小数部分不超过2位。通过JavaScript函数`clearNoNum`实现了对用户输入的有效控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

上代码

HTML代码

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);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值