Так вы поменьше увлекайте привязкой к конкретному и будет счастье вам. Атрибут id, это идентификатор и он уникален, и зная это вы тем не менее пишите такое: var requestForm = $('#request-demo'), fullNameInput = $('#fullName'), при этом желая в перспективе обрабатывать и другие подобные. А ведь найти DOM элемент можно не только по id. Вот и ответ на вопрос: либо к примеру по классу получаем элементы формы, которые нужно проверять и устанавливаем на них обработчик, либо делегируем обработку их родительской форме. Во втором случае и не будет проблем с указанием id хоть дюжины форм - $('#request-demo, #request-popup').on('event', 'selector', function ... ). В данном обработчике this, это текущий элемент, а $(this).closest('from'), его форма. Всякие '#fullName' не нужны.
Сами обработчики - зачем их столько и при этом не отличающихся друг от друга практически ни чем? Выбрасывать их и прописывать единые правила для всех полей (что и описывает куча ваших функций). А различия, шаблоны выражений, так к ним нужно обращаться не как numberCheck и подобному, а как к свойству объекта, имя которого есть либо имя поля, либо тип.
Последний раз редактировалось laimas, 03.12.2016 в 10:14.
|