【问题标题】:Input type number with comma React用逗号输入类型号 React
【发布时间】:2021-11-05 20:55:26
【问题描述】:

我对 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}));
    }

【问题讨论】:

  • 你能分享你整个代码与输入框和你正在改变的功能,(逗号)到。(点)?
  • 你是如何设置状态的?
  • type="number" 中是否允许使用逗号?
  • @SurjeetBhadauriya 您好,我将输入代码添加到问题正文中
  • @Andy 你好,我在我的问题中添加代码

标签: javascript reactjs validation input


【解决方案1】:

试试这个代码:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-11
    • 2018-11-13
    • 2021-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多