反应使用输入字段的不同的值,它显示

问题描述 投票:2回答:2

我使用的数字格式为国际输入字段。 e.g.my输入字段将输入值12,555.8但是当我提交表单,我想用价值12555.8没有逗号。

我使用的是采取两种格式护理库反应号码格式。我的问题是我怎么能附上12555.8数量,而不逗号输入字段,这样,当我提交表单,我可以使用该值?

<NumberFormat  
                    thousandSeparator={this.props.thousandSeparator}
                    decimalSeparator={this.props.decimalSeparator}
                    value={this.state.formattedValue}
                    valOriginal={this.modifiedInputValue}
                    onKeyUp={(event) => {this.onKeyUpFormatted(event)}}
                    onValueChange={(values) => {
                        const {formattedValue, floatValue} = values;
                        this.modifiedInputValue = isNaN(floatValue)?'':floatValue;
                        this.setState({formattedValue});
                    }}
                />

我想这个代码,并同时提交表单试图捕捉非格式化值以下一样

event.target.elements.valOriginal
html reactjs
2个回答
0
投票

我添加的属性作为数据valOriginal为阵营元件。在此之后,我们可以访问提交表单事件过程中该值作为element.dataset.valOriginal。


-1
投票

我使用的是采取两种格式护理库反应号码格式。我的问题是我怎么能附上12555.8数量,而不逗号输入字段,这样,当我提交表单,我可以使用该值?

你不想附加的12555.8值没有逗号输入字段。每当你修改输入字段的“价值”,你会改变什么是显示给用户。

取而代之的是,解决的办法是做的形式之外的所有数据修改,提交权利之前。

所以,你的表格上,你会希望有一个“的onsubmit”处理程序,并在你的反应组件,您将定义:

onSubmitHandler = (formData) => {
  let cleanFormData = {...formData}
  cleanFormData.myNumberInput = cleaningFunction(cleanFormData.myNumberInput)
  //submit cleanFormData to server
}
© www.soinside.com 2019 - 2024. All rights reserved.