首页 > 解决方案 > 用逗号输入类型号 React

问题描述

我对 React 中的输入类型编号有疑问。如果用户用逗号输入数字,我需要显示点分隔符。像这样

11,2

应该转换为

11.2

我如何转换这个数字?我试试

value.replace(/,/g, '.')

但这不起作用。我的输入中仍然看到逗号。

PS:这就是我处理输入的方式

<input
type="number"
placeholder='Input'
name="inputValue"
step="0.01"
inputMode="decimal"
id='inputValue'
min="0"
value={inputValue}
onChange={handleChange}
/>

这是我的 handleChange 函数

const handleChange = e => {
let { name, value } = e.target;
value = value.replace(/,/g, '.');
setData(prevState => ({ ...prevState, [name]: value}));
    }

标签: javascriptreactjsvalidationinput

解决方案


试试这个代码:

const Number = "11,1";

console.log(Number.replace(/\,/, "."));


//Now your handleChange function will look like this:

const handleChange = e => {
  let { name, value } = e.target;
  value = value.replace(/\,/, ".");
  setData(prevState => ({ ...prevState, [name]: value}));
}


推荐阅读