我有一个注册表单,其中以一个日期作为输入。
我输入日期的代码是:
birthDate: new Date(),
this.handleSubmit = this.handleSubmit.bind(this);
this.handledChange = this.handledChange.bind(this);
handledChange(date) {
this.setState({
birthDate: date
});
}
<ControlLabel>Date de naissance</ControlLabel>
<FormGroup controlId="birthDate" bsSize="large">
<FormControl
autoFocus
type="date"
value={this.state.birthDate}
onChange={this.handledChange}
/>
</FormGroup>
提交时,在控制台上的输入日期为undefined
。
我想要以下格式:YYYY-MM-DD
我该如何解决?
答案 0 :(得分:2)
您不会直接通过事件目标获得所选日期
更改
handledChange(date) {
this.setState({
birthDate: date
});
}
收件人
handledChange(event) {
this.setState({
birthDate: event.target.value
});
}
答案 1 :(得分:1)
提交后,您还可以使用表单ID提取表单的输入值。
您可以在自己的Submit方法中尝试使用以下方法:
让selectedDate = document.getElementById('birthDate')
此处的出生日期是指FormGroup的controlId
答案 2 :(得分:0)
这就像一颗宝石。如果您仍然遇到问题,请尝试一下
<input
type="date"
name="expiration date"
value={this.state.expiration_date}
onChange={event => this.setState({expiration_date: event.target.value})}
/>
onChange = (key, value) => {
this.setState({
[key]: value
})
}