繁体   English   中英

customInput未在react-datepicker中返回所选日期

[英]customInput not returning the selected date in react-datepicker

我试图在单击图标时打开 为此,我正在使用customInput参数。 单击图标即可打开 ,但是onChange处理程序未获取所选日期。 这是我的代码:

<div className="date-icon">
    <DatePicker
        id="date-picker"
        dateFormat="YYYY-MM-DD"
        selected={this.state.startDate}
        showMonthDropdown
        onChange={this.handleDateChange.bind(this)}
        customInput={<img src="/img/cal.svg" alt=""/>}
        //includeDates={this.state.activityDates}
    />
    <br/>
 </div>

这是handleDateChange函数

handleDateChange(date, event){
    console.log(document.getElementById("date-picker").value)
}

我在控制台日志上undefined

当我删除该customInput参数时,日期将按预期方式在控制台中打印。

默认输入是input元素,其value 您的自定义输入<img src="/img/cal.svg" alt=""/>不是输入元素,并且没有value

相反,您可以将给定的力矩存储在onChange处理程序中,并将其存储在状态中,然后使用它。

class App extends React.Component {
  state = { selectedDate: moment() };

  handleDateChange = m => {
    this.setState({ selectedDate: m });
    console.log(m.format("YYYY-MM-DD"));
  };

  render() {
    return (
      <DatePicker
        id="date-picker"
        dateFormat="YYYY-MM-DD"
        selected={this.state.selectedDate}
        showMonthDropdown
        onChange={this.handleDateChange}
        customInput={<img src="/img/cal.svg" alt=""/>}
      />
    );
  }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM