如何解决输入字段不会在reactjs中更改
我正在尝试更改表单上的输入字段,但是我什么也不能更改。我需要帮助以查看在“ this.changeNameHandler”上做错了什么。
class UApt extends Component {
constructor(props) {
super(props)
this.state = {
details: [],id: this.props.match.params.id,appointmentName: ''
}
this.changeNameHandler = this.changeNameHandler.bind(this);
}
changeNameHandler = (event) => {
this.setState({ appointmentName: event.target.value });
}
render() {
return (
<div>
<form onSubmit={this.handleSubmit}>
<div className="form-group">
<label> Name: </label>
<input
type="text"
placeholder="Name"
name="appointmentName"
className="form-control"
value={this.state.details.appointmentName}
onChange={this.changeNameHandler} />
</form>
</div>
)
}
}
解决方法
您可以将表单输入的值更改为此
<form onSubmit={this.handleSubmit}>
<div className="form-group">
<label> Name: </label>
<input
type="text"
placeholder="Name"
name="appointmentName"
className="form-control"
value={this.state.appointmentName}
onChange={this.changeNameHandler} />
</form>
,
尝试更换
value={this.state.details.appointmentName}
使用
value={this.state.appointmentName}
!
您似乎为该值分配了错误的状态项。
,更改输入值 {this.state.details.appointmentName} 至 {this.state.details.appointmentName}
您还错过了className =“ form-group”的div的结束标记
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。