React 怎么删除 input type=‘number‘ 数字中的前导零?

前言

今天有一个 React JS 的初学者,问我一个用例,想更正用户在<input type='number>字段中输入的数字。

默认情况下,用户可以输入带前导零的数字,例如 0002 或 -0042 等。

想让它在用户输入数字时删除前导零。此外,用户应该能够输入小数和负数。

解决方案

1,使用正则表达式从头开始删除零:/^0+/

onChange = (e) => {
    const _removedZeros = e.target.value.replace(/^0+/, '')
    ///...
}
<input type = 'number' onChange={onChange}>

2,简单地将值乘以 1,如下所示:

const [value, setValue] = useState("");
<input
    value={Boolean(value) ? value : ''}
    type="number"
    onChange={(e) => setValue(e.target.value * 1)}
  />

这样用户就不能输入前导零

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值