added validation for mobile no , address and panCard no, user can't add more than 12 no. and any special or letter character and can't add more than 500 character for address

This commit is contained in:
Pramod Mahajan 2025-04-18 23:26:50 +05:30
parent 868f5038b0
commit 8715d8e94e

View File

@ -121,6 +121,7 @@ const ManageEmployee = () => {
register, register,
control, control,
handleSubmit, handleSubmit,
watch,
formState: { errors }, formState: { errors },
reset, reset,
getValues, getValues,
@ -144,8 +145,11 @@ const ManageEmployee = () => {
PhoneNumber: currentEmployee?.phoneNumber || "", PhoneNumber: currentEmployee?.phoneNumber || "",
JobRoleId: currentEmployee?.jobRoleId || "", JobRoleId: currentEmployee?.jobRoleId || "",
}, },
mode: "onChange",
}); });
const AadharNumberValue = watch("AadharNumber") || "";
const onSubmit = (data) => { const onSubmit = (data) => {
setLoading(true); setLoading(true);
@ -338,6 +342,7 @@ const ManageEmployee = () => {
{...register("PhoneNumber")} {...register("PhoneNumber")}
className="form-control form-control-sm" className="form-control form-control-sm"
placeholder="Phone Number" placeholder="Phone Number"
inputMode="numeric"
/> />
{errors.PhoneNumber && ( {errors.PhoneNumber && (
<div <div
@ -429,7 +434,8 @@ const ManageEmployee = () => {
placeholder="Current Address" placeholder="Current Address"
aria-label="Current Address" aria-label="Current Address"
aria-describedby="basic-icon-default-message2" aria-describedby="basic-icon-default-message2"
{...register("CurrentAddress")} {...register( "CurrentAddress" )}
maxLength={500}
></textarea> ></textarea>
{errors.CurrentAddress && ( {errors.CurrentAddress && (
<div <div
@ -451,7 +457,8 @@ const ManageEmployee = () => {
placeholder="Permanent Address" placeholder="Permanent Address"
aria-label="Permanent Address" aria-label="Permanent Address"
aria-describedby="basic-icon-default-message2" aria-describedby="basic-icon-default-message2"
{...register("PermanentAddress")} {...register( "PermanentAddress" )}
maxLength={500}
></textarea> ></textarea>
{errors.PermanentAddress && ( {errors.PermanentAddress && (
<div <div
@ -474,7 +481,7 @@ const ManageEmployee = () => {
<div className="form-text text-start">Role</div> <div className="form-text text-start">Role</div>
<div className="input-group input-group-merge "> <div className="input-group input-group-merge ">
<select <select
className="form-select form-select-sm " className="form-select form-select-sm"
{...register("JobRoleId")} {...register("JobRoleId")}
id="JobRoleId" id="JobRoleId"
aria-label="" aria-label=""
@ -507,6 +514,7 @@ const ManageEmployee = () => {
{...register("EmergencyContactPerson")} {...register("EmergencyContactPerson")}
className="form-control form-control-sm" className="form-control form-control-sm"
id="EmergencyContactPerson" id="EmergencyContactPerson"
maxLength={50}
placeholder="Contact Person" placeholder="Contact Person"
/> />
{errors.EmergencyContactPerson && ( {errors.EmergencyContactPerson && (
@ -528,6 +536,7 @@ const ManageEmployee = () => {
className="form-control form-control-sm phone-mask" className="form-control form-control-sm phone-mask"
id="EmergencyPhoneNumber" id="EmergencyPhoneNumber"
placeholder="Phone Number" placeholder="Phone Number"
inputMode="numeric"
/> />
{errors.EmergencyPhoneNumber && ( {errors.EmergencyPhoneNumber && (
<div <div
@ -549,6 +558,8 @@ const ManageEmployee = () => {
className="form-control form-control-sm" className="form-control form-control-sm"
id="AadharNumber" id="AadharNumber"
placeholder="AADHAR Number" placeholder="AADHAR Number"
maxLength={12}
inputMode="numeric"
/> />
{errors.AadharNumber && ( {errors.AadharNumber && (
<div className="danger-text text-start"> <div className="danger-text text-start">
@ -565,6 +576,7 @@ const ManageEmployee = () => {
className="form-control form-control-sm" className="form-control form-control-sm"
id="PanNumber" id="PanNumber"
placeholder="PAN Number" placeholder="PAN Number"
maxLength={10}
/> />
{errors.PanNumber && ( {errors.PanNumber && (
<div <div