我需要输入的能力只接受数字,小数和逗号。现在使用type=number
意味着我限制为数字和小数,但我不确定如何允许逗号。任何人都可以建议我能做些什么吗?
JS
var StopPrice = React.createClass({
getInitialState() {
return {
stopPrice: 92.99
}
},
updateStopPrice(stopPrice) {
this.setState({
stopPrice
})
},
onChange(event) {
var stopPrice = event.target.value;
this.setState({
stopPrice
});
},
render() {
return <div>
<input type="number" value={this.state.stopPrice} onChange={this.onChange} />
</div>
}
});
答案 0 :(得分:0)
根据docs:
value =浮点数
表示数字的字符串。
而且,如果你更进一步,到spec for floating point,你会注意到你不能有任何其他角色。
要实现所需的行为,您可以使用pattern
属性并指定正则表达式,例如
<input pattern="\d+((\.|,)\d+)?" />
正则表达式:
\d+((\.|,)\d+)?
允许数字(\ d),然后是可选部分:
点或逗号(。|,)和更多数字\ d +。