更改输入标记

时间:2018-02-15 17:28:55

标签: forms reactjs textfield placeholder default-value

我使用react-form创建输入表单。我正在使用标签。我想预先填充输入字段,但我希望用户仍然能够更改输入的默认值。 React是我正在使用的前端语言。我尝试将输入标记内的readOnly字段设置为false。它允许我点击该字段,但我仍然无法退出默认日期并将其更改为其他内容。

当我使用占位符时,根本没有输入标记,存在重叠问题(检查附加的图像)。一旦你输入一个值,就没有问题,因为"截止日期"随着现有功能向上移动。

我需要占位符才能在我点击"截止日期"字段输入值,或者能够在使用输入标记时更改默认值。我正在使用反应版本16.2.0 enter image description here



              <Field
                name="dueDayOfFilingPeriod"
                component={TextField}
                floatingLabelText="Due Date"
                floatingLabelStyle={(props.hasFilingFormName || props.hasPreference) ? {} : styles.floatingLabelStyle}
                floatingLabelFocusStyle={styles.floatingLabelFocusStyle}
                disabled={props.hasFilingFormName}
                style={styles.inline}
              >
                <input value= {props.filingInfo.dueDate}/>
              </Field>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:2)

您可以在defaultValue上设置value道具,而不是<input />道具。此模式通常称为非受控组件,因为您只设置了起始值,您可以在此处阅读更多内容:https://reactjs.org/docs/uncontrolled-components.html

要使其成为受控组件,其中值始终相对于组件的状态进行设置,您需要向onChange组件添加<input />处理程序并使用新的价值。您可以在此处阅读有关受控组件的更多信息:https://reactjs.org/docs/forms.html