我试图有一个允许为空的字段,但是,如果有输入,则只能有字母和空格。
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 等输入...但我也希望有一个空输入选项。