Middle
INN maydoni (10 yoki 12 raqam). Blur dan so'ng xato ko'rsatish. Yuborish tugmasi forma to'g'ri bo'lmaguncha o'chirilgan.
sobes.tech AI
AIdan javob
10 yoki 12 raqamli tekshiruv bilan, blurdan keyin xato ko'rsatilishi va forma noto'g'ri bo'lsa "Yuborish" tugmasi bloklanishi mumkin bo'lgan INN maydoni uchun quyidagicha qilish mumkin (Reactda):
import React, { useState } from 'react';
function InnForm() {
const [inn, setInn] = useState('');
const [touched, setTouched] = useState(false);
const isValidInn = (value) => {
return /^\d{10}$/.test(value) || /^\d{12}$/.test(value);
};
const handleBlur = () => {
setTouched(true);
};
const isValid = isValidInn(inn);
return (
<form>
<label>
INN:
<input
type="text"
value={inn}
onChange={e => setInn(e.target.value)}
onBlur={handleBlur}
maxLength={12}
/>
</label>
{touched && !isValid && (
<div style={{ color: 'red' }}>INN 10 yoki 12 raqamdan iborat bo'lishi kerak</div>
)}
<button type="submit" disabled={!isValid}>Yuborish</button>
</form>
);
}
export default InnForm;
```\n\nBu yerda:\n- Validatsiya INN to'g'ri bo'lishi uchun 10 yoki 12 raqamdan iboratligini tekshiradi.\n- Xato faqat maydon fokusdan chiqib ketgandan keyin (`blur`) ko'rsatiladi.\n- "Yuborish" tugmasi INN to'g'ri bo'lmaguncha o'chirilgan.