在antd的DatePicker中处理日期时间的手动编辑

时间:2017-09-25 04:00:53

标签: reactjs react-redux antd

我正在使用antd。{/ p>中的DatePicker

<LocaleProvider locale={enUS}>
    <DatePicker
      format="MM/D/YYYY HH:mm"
      defaultValue={this.getStartValue()}
      showTime={{format: 'HH:mm'}}
      placeholder="Start"
      allowClear={false}
      onOk={this.onStartTimeChange}
    />
</LocaleProvider>
<LocaleProvider locale={enUS}>
    <DatePicker
      format="MM/DD/YYYY HH:mm"
      defaultValue={this.getEndValue()}
      showTime={{format: 'HH:mm'}}
      placeholder="End"
      allowClear={false}
      onOk={this.onEndTimeChange}
    />
</LocaleProvider>

我正在显示状态值和onOK am使用新值更改状态。现在面临的问题是当用户手动编辑时间时。

有没有办法

  1. 阻止用户手动编辑输入字段更改时间?
  2. 或者用编辑后的值更改状态?
  3. onChange是唯一的方法,因为onCenage几乎每次用户点击都会多次改变我的状态。如果推荐使用onChange,那么我们可以避免使用ok按钮吗?

1 个答案:

答案 0 :(得分:0)

在线搜索并尝试后。

我们可以使用onChange,这将处理所有事情。

<DatePicker
  format='MM/DD/YYYY HH:mm'
  defaultValue={this.getFromValue()}
  showTime={{format: 'HH:mm'}}
  placeholder="Start"
  allowClear={false}
  showToday={false}
  disabledDate={this.disabledFromDate}
  onChange={this.onStartTimeChange}
/>