为了账号安全,请及时绑定邮箱和手机立即绑定

如何仅在选择选项时显示日期选择器?

如何仅在选择选项时显示日期选择器?

元芳怎么了 2023-04-20 10:15:46
我正在使用 react-datepicker 并选择了 4 个选项,我只需要在选择选项号 3 时显示日历。这是我到目前为止的代码。const [startDate, setStartDate] = useState(new Date())<div className="input-block">   <label htmlFor="status">Status</label>   <select id="status" name="status" required>     <option value="1">Aguardando Disponibilidade</option>     <option value="2">Aguardando Agendamento</option>     <option value="3">Ativação Agendada</option>     <option value="4">Ativação Efetuada</option>   </select>   <div className="calendar">     <DatePicker       className="calendar-input"       selected={startDate}       onChange={(date) => setStartDate(date)}       showTimeSelect       timeFormat="HH:mm"       dateFormat="dd/MM/yyyy HH:mm "      />   </div></div>
查看完整描述

1 回答

?
弑天下

TA贡献1818条经验 获得超8个赞

import React, { useState } from 'react';


const YourComp = () => {

  const [selectedValue, updateSelectedValue] = useState();

  const [startDate, setStartDate] = useState(new Date())


  const onSelectChange = ({ target: { value } }) => updateSelectedValue(value);


  return (

    <div className="input-block">

     <label htmlFor="status">Status</label>

     <select

      id="status"

      name="status"

      required

      onChange={onSelectChange}

     >

       <option value="1">Aguardando Disponibilidade</option>

       <option value="2">Aguardando Agendamento</option>

       <option value="3">Ativação Agendada</option>

       <option value="4">Ativação Efetuada</option>

     </select>

   {

     selectedValue === '3'

     ? (

      <div className="calendar">

        <DatePicker

         className="calendar-input"

         selected={startDate}

         onChange={(date) => setStartDate(date)}

         showTimeSelect

         timeFormat="HH:mm"

         dateFormat="dd/MM/yyyy HH:mm "

        />

      </div>

     )

     : null

   }

</div>

  )

}

上面提到的代码应该可以解决您的问题。这个想法是进行条件检查以呈现 DatePicker 组件。


查看完整回答
反对 回复 2023-04-20
  • 1 回答
  • 0 关注
  • 131 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信