【发布时间】:2019-11-02 16:55:52
【问题描述】:
在 React 中,我希望将电子邮件验证(检查 @ 和 .com)添加到当前检查空输入字段的表单中。
我 found this 完成了这项工作,但不知道如何通过我的其他验证将其连接到 onSubmit。
这是完整代码的link to this project's codepen。
为输入和错误设置初始状态:
constructor() {
super();
this.state = {
inputs: {
name: '',
email: '',
message: '',
},
errors: {
name: false,
email: false,
message: false,
},
};
}
JS 处理输入,onBlur
updateInput = e => {
this.setState({
inputs: {
...this.state.inputs,
[e.target.name]: e.target.value,
},
errors: {
...this.state.errors,
[e.target.name]: false,
},
});
};
handleOnBlur = e => {
const { inputs } = this.state;
if (inputs[e.target.name].length === 0) {
this.setState({
errors: {
...this.state.errors,
[e.target.name]: true,
},
});
}
};
【问题讨论】:
-
有什么问题?你有一个有效的代码示例,你为什么不照着做呢?
-
Eric,电子邮件必须以 .com 结尾吗?
-
@ChristopherNgo 理想情况下是的
-
@EricNguyen 请参阅下面的解决方案。如果您有任何问题,请告诉我。 :)
-
HTML5 在你使用 时检查电子邮件
标签: reactjs forms email-validation