【发布时间】:2020-03-21 08:20:01
【问题描述】:
这是一个简单的表单,它更新状态对象 onChange 并在提交时显示该状态对象。当有多个输入元素时,我无法让它工作。
谁能告诉我这段代码有什么问题? onSubmit 在只有一个输入元素时有效,但在有多个输入元素时无效!
class ReactForm extends React.Component {
constructor(props) {
super(props);
this.handleChange = this.handleChange.bind(this);
this.validate = this.validate.bind(this);
this.state = {
name: "",
email: ""
};
}
handleChange(event) {
event.preventDefault();
const name = event.target.name;
const value = event.target.value;
this.setState({
[name]: value
});
}
validate(event) {
event.preventDefault();
console.log(this.state);
}
render() {
return (
<div>
<form onSubmit={this.validate}>
<div>
<input
type="text"
name="name"
value={this.state.name}
onChange={this.handleChange}
/>
<input
type="email"
name="email"
value={this.state.email}
onChange={this.handleChange}
/>
</div>
</form>
</div>
);
}
}
ReactDOM.render(
<ReactForm />,
document.getElementById("root")
);
【问题讨论】:
标签: reactjs