您好,基本上,我的问题是同时填写表格上的输入。当我在名字输入上写东西时,会同时写上姓氏,电子邮件和电话输入,但我希望它们分开工作。我认为handleChange可能是一个问题,我一直在尝试不同的方法,但是它们都不起作用
这是我的代码:
standard-object
答案 0 :(得分:1)
所有输入都在同时更改,因为对于该状态下的所有输入,您只保留一个value
。首先为每个输入保留不同的输入:
this.state = {
fname: "",
lname: "",
email: "",
phone: "",
};
然后,为您的name
中的每一个给一个FormControl
:
<FormControl
type="text"
name="fname"
value={this.state.fname}
placeholder="First Name"
onChange={this.handleChange}
/>
在这里,也将value
更改为this.state.fname
(根据此命名其他名称),并将onChange
更改为handleChange
。我们正在为所有输入编写一个handleChange
方法。在这里:
handleChange = ( event ) => {
const { name, value } = event.target;
this.setState({ [name]: value });
}