“可选”字段的字段验证

时间:2021-06-14 16:54:44

标签: javascript validation

我试图有一个允许为空的字段,但是,如果有输入,则只能有字母和空格。

if (!fields["cuisine"]) {
  formIsValid = false;
  errors["cuisine"] = "Cannot be empty";
}
if (typeof fields["cuisine"] !== "undefined") {
  if (!fields["cuisine"].match(/^[a-zA-Z ]+$/)) {
    formIsValid = false;
    errors["cuisine"] = "Only letters";
  }
}

我就是这个,除了 formIsValid - false,我基本上希望它是真的。问题是如果我将它设置为 true,我可以输入我不想要的数字和符号。

编辑:

这是我正在使用的。

handleValidation() {
        let fields = this.state.fields;
        let errors = {};
        let formIsValid = true;

        //Cuisine
        if (typeof fields["cuisine"] !== "undefined") {
            if (!fields["cuisine"].match(/^[a-zA-Z ]+$/)) {
              formIsValid = false;
              errors["cuisine"] = "Only letters";
            }
          }
    }

<label>Change Cuisine Type:</label>
 <input 
 ref="cuisine" 
 type="text" 
 onChange={this.handleChange.bind(this, "cuisine")} 
 value={this.state.fields["cuisine"]} 
 placeholder={`${this.props.restCuisine}`}></input>

我想要输入像...法语、美国等...我不想要像 French2、@merican 等输入...但我也希望有一个空输入选项。

0 个答案:

没有答案