gpt4 book ai didi

reactjs - 如何在类型为 ="number"的 TextInput 中仅输入整数值

转载 作者:行者123 更新时间:2023-12-03 19:33:01 25 4
gpt4 key购买 nike

我想使用 material-UI TextInput 仅输入整数值(不是十进制值)。
我按如下方式使用了 TextInput,但它仍然允许使用十进制数。
我怎样才能做到这一点?

<TextField id="outlined-value" 
type="number"
label="Value"
className={classes.standartInputMargin}
value={this.state.allowedValue}
margin="normal"
variant="outlined"
onChange={(event) => Number.isInteger(event.target.value)
? this.setState({ allowedValue: event.target.value })
: null} />

最佳答案

您将原始值传递给 setState , 而不是整数值。由于您的输入仅接受数字,因此您只需检查小数位即可。

onChange = (e) => {
const { value } = e.target;

if (value.match('.')) {
this.setState({ value: parseInt(value) })
}

return null;
}

或者,如果您只有一个常规输入,这样的操作将只允许您输入整数。
onChange = e => {
const { value } = e.target;
const parsedInt = parseInt(value);

if (parsedInt) {
this.setState({ value: parsedInt });
}

return null;
};

关于reactjs - 如何在类型为 ="number"的 TextInput 中仅输入整数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52517203/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com