ввод и проверка адреса
прошу самого общего совета и пинка в нужном направлении.
у меня задача такая. необходимо сделать страницу проверки адресов. пользователь заходит, вводит адрес,после анализа адреса выводится некоторая форма форма.
адрес состоит из 4 элементов: название населенного пункта, название улицы, номер дома, номер квартиры. поле с номером квартиры можно не заполнять, остальные обязательны к заполнению.
кое что я уже реализовал. для первых двух полей использую JQuery-модуль autocomplete - пользователь вводит название нас.пункта, оно отсылается в БД в виде запроса, на которого возвращается результирующий набор, содержащий строго определенный набор улиц. далее с выбором улицы происходит такая же канитель, только поле номера дома представляет из себя выпадающий html-список типа select. он так же содержит строго определенный набор номеров домов.
старт проверки происходит после нажатия html-кнопки типа button.
то, что я описал уже работает, НО мне хотелось бы найти уже готовые модули, с помощью которых можно повторить описанную систему. так как задача классическая, то я уверен, что они существуют и в большом количестве.
причина поиска готового или полуготового решения в том, что моя задача подразумевает множество проверок и оговорок, которые мою несовершенную систему превращают в говнокод. вот примеры проверок:
1. необходимо организовать переходы фокуса при различных даже самых неожиданных деиствиях пользователей.
2. необходимо обчищать поля(и переменные, которые с ними связаны) при переходах фокуса на определенные поля.
3. необходимо проверять названия , вводимые в первые 2 поля на предмет существования их в БД.
4. необходимо дизэблить или очищать список в третьем поле, если первое или втрое не заполнено или заполнено некорректно.
5. необходимо после вывода сообщения об ошибке не значения в полях оставлять. чтобы пользователю приходилось заменить только ошибочное значение.
6. необходимо после осуществления финальной проверки и отправки формы возвратить пользователя к начальной странице, поля в которой содержали бы введенные ранее значения.
ну и другие. то есть постоянно взаимодействуют js, php, html, ajax. на этом и спотыкаюсь.
особых мер безопасности не требуется. то есть если все проверки будут проходить на стороне клиента меня это вполне устроит.
повторюсь, что хотел бы наити модули, в которых подобные мелочи уже продуманыи. в этом случае, думаю, смог бы доработать их для своей задачи.
|