React datepicker 禁用手动输入日期

Kum*_*ara 10 javascript reactjs react-datepicker

我正在为我的表单使用 React 日期选择器。目前它运行良好,但用户可以删除日期并输入任何值。我该如何限制它?

这是我的代码:

import DatePicker from "react-datepicker";

    <DatePicker
    name="invoiceDate"
    className="form-control form-control-sm"
    type="text"
    size="sm"
    placeholder=""
    selected={date}
    minDate={new Date()}
    value={values.setDate}
    onChange={datePickerChange}
    dateFormat="dd/MM/yyyy"
    />
Run Code Online (Sandbox Code Playgroud)

Maj*_* M. 22

只需添加这行代码即可DatePicker

onKeyDown={(e) => {
    e.preventDefault();
}}
Run Code Online (Sandbox Code Playgroud)

添加此后event,您的组件的代码将类似于以下代码:

<DatePicker
    name="invoiceDate"
    className="form-control form-control-sm"
    type="text"
    size="sm"
    placeholder=""
    selected={date}
    minDate={new Date()}
    value={values.setDate}
    onChange={datePickerChange}
    dateFormat="dd/MM/yyyy"
    onKeyDown={(e) => {
       e.preventDefault();
    }}
  />
Run Code Online (Sandbox Code Playgroud)

编辑病人沉默-ybz45

  • 这个解决方案是有效的,与官方的 github 形式不同。 (2认同)