gpt4 book ai didi

javascript - Reactjs 日期时间值未定义

转载 作者:行者123 更新时间:2023-11-30 21:16:26 26 4
gpt4 key购买 nike

我正在使用 React js,但我很难从我的日期时间选择器中获取值/数据。

这是我的输入框:

<Form className="form1" onSubmit={this.handleSubmit}>
<label>Date Started: </label>
<Datetime dateFormat='YYYY-MM-DD'
timeformat='hh-mm-ss'
value={this.state.datestartedV}
onChange={this.props.handleDatestarted} />

<label>Date Ended: </label>
<Datetime dateFormat='YYYY-MM-DD'
timeformat='hh-mm-ss'
value={this.state.dateendedV}
onChange={this.props.handleDateended} />

<Button onClick={this.handleSubmit}>SubmitRequest</Button>
</Form>

这是我的听众:

handleSubmit(event) {
event.preventDefault();
alert('Date is: ' + this.state.datestartedV + this.state.dateendedV);
}

handleDatestarted(event) {
this.setState({datestartedV: event.target.value});
}

handleDateended(event) {
this.setState({dateendedV: event.target.value});
}

constructor(props) {
super(props);
this.state = {datestartedV: ''};
this.state = {dateendedV: ''};
this.handleDatestarted = this.handleDatestarted.bind(this);
this.handleDateended = this.handleDateended.bind(this);
}

最佳答案

最初,this.state.datestartedV 是未定义的,因为您用第二个状态定义覆盖了初始状态。

将构造函数更改为:

constructor(props) {
super(props);
this.state = {
datestartedV: '',
dateendedV: ''
};
this.handleDatestarted = this.handleDatestarted.bind(this);
this.handleDateended = this.handleDateended.bind(this);
}

假设您的问题的代码全部在一个组件中,那么您必须以这种方式在没有.props 的情况下使用您的函数:

     onChange={this.handleDatestarted} 

     onChange={this.handleDateended}

关于javascript - Reactjs 日期时间值未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45646269/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com