第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

我將如何比較表單中的兩個(gè)日期并驗(yàn)證它們?第二個(gè)不應(yīng)該在第一個(gè)之前

我將如何比較表單中的兩個(gè)日期并驗(yàn)證它們?第二個(gè)不應(yīng)該在第一個(gè)之前

holdtom 2023-05-18 09:48:32
我正在嘗試使用 Bootstrap 在 React 中構(gòu)建一個(gè)表單。我有兩個(gè)日期(一個(gè)是你開(kāi)始工作的時(shí)間,另一個(gè)是你結(jié)束公司工作的時(shí)間),第二個(gè)不應(yīng)該在第一個(gè)之前。所以如果第一個(gè)是 10.1.2020,你應(yīng)該不能在第二個(gè)中選擇這個(gè)日期之前的日期。作為一個(gè)反應(yīng)應(yīng)用程序,我也給你一個(gè)鏈接:https://codesandbox.io/s/friendly-worker-nwtgu ?file=/package.json我感興趣的代碼在這些組件中:Practical 和 PracticalForm。表格代碼:       <Form.Group controlId="formBasicDateFrom">          <Form.Label>Worked from</Form.Label>          <Form.Control            onChange={(e) => {              checkDate(e);              handleChange(e);            }}            type="date"            defaultValue={dateFrom}            name="dateFrom"            required          />        </Form.Group>        <Form.Group controlId="formBasicDateUntil">          <Form.Label>Worked to</Form.Label>          <Form.Control            isInvalid={validate}            onChange={(e) => {              checkDate(e);              handleChange(e);            }}            // onChange={(e) => {            //   handleChange(e);            //   checkDate();            // }}            type="date"            defaultValue={dateTo}            name="dateTo"            required          />          <Form.Control.Feedback type="invalid">            Date must be later then date from when you worked...          </Form.Control.Feedback>        </Form.Group> 我驗(yàn)證的函數(shù)現(xiàn)在看起來(lái)像這樣:checkDate = (event) => {    let d1 = new Date(this.state.dateFrom);    let d2 = new Date(this.state.dateTo);    if (d1.getTime() > d2.getTime()) {      this.setState({        validate: false,      });    } else {      this.setState({        validate: true,      });    }    console.log(d1.getTime());    console.log(d2.getTime());    console.log(this.state.validate);  };
查看完整描述

1 回答

?
心有法竹

TA貢獻(xiàn)1866條經(jīng)驗(yàn) 獲得超5個(gè)贊

您可以將checkDate(event)函數(shù)移動(dòng)到函數(shù)內(nèi)部,因?yàn)檫@里的事物是異步的,因此在設(shè)置狀態(tài)時(shí)您可以調(diào)用this.setState類(lèi)似的東西,handleChangecheckDate(event)


  handleChange = (event) => {

    this.setState(

      {

        [event.target.name]: event.target.value

      },

      () => {

        this.checkDate(event);

      }

    );

  };

然后像這樣修改checkDate函數(shù),


  checkDate = async (event) => {

    let d1 = new Date(this.state.dateFrom);

    let d2 = new Date(this.state.dateTo);


    if (d1.getTime() < d2.getTime()) {

      this.setState({

        validate: false

      });

    } else {

      this.setState({

        validate: true

      });

    }

    console.log(d1.getTime());

    console.log(d2.getTime());

    console.log(this.state.validate);

  };

也改變條件,


d1.getTime() > d2.getTime() 截止 d1.getTime() < d2.getTime()日期d1應(yīng)該總是小于d2日期...


查看完整回答
反對(duì) 回復(fù) 2023-05-18
  • 1 回答
  • 0 關(guān)注
  • 172 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)