【发布时间】:2018-07-29 11:17:59
【问题描述】:
从下拉日历中选择日期并设置自动提交值的时间后。但是,我想使用提交按钮来提交值。根据我的研究,我认为“event.preventDefault();”声明是为了防止这种事情发生。另外,值是否存储在 inputValue 中?如果是,我如何从日历类外部访问该值?
所以,再次明确地说,我想使用提交按钮提交值。
class Calendar extends React.Component {
constructor(props) {
super(props);
this.state = {
inputValue: '',
}
this.handleChange = this.handleChange.bind(this);
this.handleSubmit = this.handleSubmit.bind(this);
}
handleChange(event) {
this.state.inputValue = event.target.valueAsNumber;
console.log('Form value: ' + this.state.inputValue);
event.preventDefault();
}
handleSubmit(event) {
this.state.inputValue = event.target.valueAsNumber;
console.log('Form value: ' + this.state.inputValue);
event.preventDefault();
}
render() {
return (
<div className="Calendar">
<form onSubmit="return handleSubmit();">
<label>Date/Time</label>
<input type="datetime-local" value={this.state.inputValue} onChange={this.handleChange()} />
<input type="submit" value="Submit" />
</form>
</div>
//{this.render(){return (<UserList />)};
);
}
};
export default Calendar;
【问题讨论】:
-
如果要访问类外的值,可以考虑将值移到父状态,让父将值传递给需要它的组件
-
@EdwinHarly 我对 ReactJS 很陌生(几天前开始),所以你能提供更多解释吗?另外,如果你能添加一个更好的例子。
-
发布一个关于它的新问题,因为它是 OOT
-
再想一想,关于状态管理和其他东西,我认为这是一个相当普遍的问题,所以我想搜索起来并不难
-
什么是 OOT?
标签: reactjs