【问题标题】:react-datepicker accepting older dates those are disabled using minDate propertyreact-datepicker 接受使用 minDate 属性禁用的较旧日期
【发布时间】:2019-09-01 17:19:55
【问题描述】:

我正在使用 react-datepicker,就像下面有 minDate 属性一样。

<DatePicker
  className="form-control"
  minDate={new Date()} 
  selected={this.props.GrantExpiryDate} 
  onChange={(e) => { this.props.onGrantExpiryDateSubmit(e); }} 
  disabled={disableControl} />
  {this.props.GrantExpiryDate == null ? <div className={styles.requiredValidation}>Please select a date</div> : ''}

如果我使用 DatePicker 选择日期,它可以正常工作,如快照所示。

但是当我通过手动输入日期选择器控件输入日期时,它允许我输入那些被禁用的旧日期。

我知道这可以通过自定义函数来处理,但这仍然不是我所期望的 minDate 属性的行为。

有没有什么属性或东西可以解决这个问题。

【问题讨论】:

    标签: reactjs react-datepicker


    【解决方案1】:

    尝试使用这个

    <DatePicker
      ...
      onChangeRaw={e => e.preventDefault()}
    />
    

    【讨论】:

    • 是的,我这样做了,但它也阻止我以文本的形式手动输入日期。
    • 如果你想输入日期,尝试在onChnageRaw函数中处理比较怎么样?
    • 这是我最后的选择,使用自定义函数来处理它。如果没有其他方法来处理它。
    • 我不确定,我认为这对你来说是唯一的方法。 minDate 可以防止只选不打字。
    • 糟糕!然后我会去自定义功能来防止这个问题。您也可以将该功能添加到您的答案中。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多