Задача — встроить проверку формата непосредственно в поля ввода. Во-первых, длина номера: у ИНН она разная для физлиц и юрлиц, у ОГРН и ОГРНИП тоже отличается. Во-вторых, и это главное, — реальный расчёт контрольной суммы по официальному алгоритму с весовыми коэффициентами, а не просто подсчёт количества символов. Именно контрольная сумма отличает опечатку в правильном по длине номере от настоящего валидного значения. Проверка должна срабатывать по ходу набора текста, а не только по клику на кнопку. Кнопку отправки логично держать заблокированной, пока хотя бы одно поле не прошло проверку.
Важно: речь не про сверку с базой налоговой или другим внешним реестром — только про проверку самого числа на корректность формата и контрольной цифры, локально в форме, с дублированием той же логики на сервере. Отдельно прошу проверить вставку номера из буфера с пробелами и дефисами, а также ведущие нули.