eprivalov
@eprivalov
Учусь

Как мне сделать правильный ajax запрос?

Привет всем, есть задача вроде тривиальная, но не совсем. Есть три текстовых поля - город, страна и область. При вводе города работает авто-заполнение формы, города берутся из БД mysql. Как мне с помощью AJAX запроса узнать id города и заполнить страну и область?
  • Вопрос задан
  • 2722 просмотра
Пригласить эксперта
Ответы на вопрос 2
Assargin
@Assargin
Перед ответом смотрю наличие ✔ в ваших вопросах
Можно при потере фокуса полем ввода города, отправлять введенное туда значение на сервер, там пробовать искать в БД город по значению, и если есть - возвращать область и страну.
Ответ написан
@artishok
кратко
api.jqueryui.com/autocomplete/#method-_renderItem
Здесть есть пример: jqueryui.com/autocomplete/#custom-data

В двух словах: возвращаете с сервера не только название города, но и его id в формате json. Далее с помощью функции из первой ссылки формируете строку списка, например:
<li data-label="id этого города"><a>Название города</a></li>


Теперь при нажатии на элемент списка, узнаете id города и отсылаете запрос на сервер. В результате ожидаем json с названием и области и страны для выбранного города.

Можно упростить задачу и формировать строку сразу с названием области и страны.
<li data-label="id этого города" data-country="название страны для города" data-region="область города"><a>Название города</a></li>

И при нажатии на элемент списка, узнавать все data аттрибуты и подставлять в нужные поля. Плюсом является то, что нет необходимости слать второй запрос на сервер.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы