提交表单前如何在antd字段上实现Validation
How to implement Validation on Antd field before submitting the form
当您在输入字段中输入文本时,如何检查提交的电子邮件是否有效。我想在提交表单之前在字段有效时更改边框颜色。
我已经用 className getFieldError 实现了,但它不起作用
<Form.Item
validateTrigger="onBlur"
name="Email"
label="E-mail Address"
rules={[
{
type: "email",
message: "The input is not valid E-mail!",
},
{
required: true,
message: "Please input your E-mail!",
},
{
min: 5,
message: "'Email' must be between 5 and 255 characters.",
},
]}
>
<Input className={`${(form.getFieldError('Email').length == 0 && form.getFieldValue('Email') != undefined) ? 'field-border' : ''}`} disabled={!isAdmin} />
</Form.Item>
如果您使用的是 React js,我更喜欢 react-hook-form. It is very easy to and provides multiple ways to implement validations but it only works for the functional component if you want to use advanced forms like react-hook-form in class-based component I would recommend you formik form。
似乎验证将在输入集中时应用。所以一种方法是在 input
上创建 onBlur 事件
EmailChange = () => {
if (form.getFieldError('Email')?.length == 0 ){
e.target.classList.add('field-border');
}
}
<Input onBlur={EmailChange} disabled={!isAdmin} />
当您在输入字段中输入文本时,如何检查提交的电子邮件是否有效。我想在提交表单之前在字段有效时更改边框颜色。 我已经用 className getFieldError 实现了,但它不起作用
<Form.Item
validateTrigger="onBlur"
name="Email"
label="E-mail Address"
rules={[
{
type: "email",
message: "The input is not valid E-mail!",
},
{
required: true,
message: "Please input your E-mail!",
},
{
min: 5,
message: "'Email' must be between 5 and 255 characters.",
},
]}
>
<Input className={`${(form.getFieldError('Email').length == 0 && form.getFieldValue('Email') != undefined) ? 'field-border' : ''}`} disabled={!isAdmin} />
</Form.Item>
如果您使用的是 React js,我更喜欢 react-hook-form. It is very easy to and provides multiple ways to implement validations but it only works for the functional component if you want to use advanced forms like react-hook-form in class-based component I would recommend you formik form。
似乎验证将在输入集中时应用。所以一种方法是在 input
上创建 onBlur 事件EmailChange = () => {
if (form.getFieldError('Email')?.length == 0 ){
e.target.classList.add('field-border');
}
}
<Input onBlur={EmailChange} disabled={!isAdmin} />