出生日期输入面具反应

时间:2017-03-31 14:00:24

标签: javascript reactjs input input-mask

我正在使用this react input mask

输入掩码用于用户的出生日期。但是,这是有效的,我遇到的问题是用户可以在输入框中输入54/54/2017。我想阻止这个。我可以这样做的一种方法是在第一次输入之前输入0,如果小于10。但是,如果是12,则首先放置0。

有谁知道我可以解决这个问题的方法?

我的代码如下:

import InputMask from 'react-input-mask';

class Date extends Component {

  constructor(props) {
    this.state = {
        date_of_birth: ''   
    };
    this.handleDateOfBirth = this.handleDateOfBirth.bind(this);   

  }

  handleDateOfBirth(e) {

    this.setState({
      date_of_birth: e.target.value
    });

    }


  render() {
    const = {this.state};
    return <InputMask value={date_of_birth} mask="99/99/9999" onChange={this.handleDateOfBirth} />;
  }

}

1 个答案:

答案 0 :(得分:0)

在设置日期值之前,最好尝试解析日期对象中的字符串,如

var valid_date = new Date(e.target.value)

这将返回&#34;无效日期&#34;如果使用此响应您的日期无效,则可以设置if条件并阻止进一步操作

希望这有助于:)