Динамический выпадающий список для разных стран, штатов, географических мест?

У меня есть пользователи, чтобы ввести их город, штат и страну. Но моя дилемма заключается в том, как управлять им динамически, чтобы я мог контролировать то, что вводится, имея правильное написание и форматирование.

Например, в настоящее время у меня есть статический выпадающий список для каждого состояния.

<select>
     <option name="state" value="AL">Alabama</option>
     <option name="state" value="AK">Alaska</option>
     <option name="state" value="AZ">Arizona</option>
     <option name="state" value="AR">Arkansas</option>
     <option name="state" value="CA">California</option>
     ....
 </select>

Это прекрасно работает, но не масштабируется, если пользователь находится за пределами США. Это также отстает в отношении разных стран и городов. Я думал о том, чтобы использовать текстовые поля, затем сохранить их в отдельной базе данных и использовать плагин автозаполнения JQuery для генерации списка, но это не лучший способ сделать это.

1 ответ

Решение

Итак, через несколько часов я написал приложение, основанное на мировой базе данных MySQL: MySQL world Setup

Код для всего приложения достаточно большой, чтобы вставить ответ, поэтому я предоставлю ссылки Pastebin для каждого отдельного файла, а также ссылку на рабочий пример сценария и ссылку на скачивание Zip-архива.

Я уверен, что код можно улучшить, но я оставлю это на ваше усмотрение.

Требования: база данных MySQL world / jQuery

  1. index.html: index.html
  2. style.css: style.css
  3. country.js: country.js
  4. dbconnect.php: dbconnect.php
  5. get_country.php: get_country.php
  6. get_states.php: get_states.php
  7. get_city.php: get_city.php
  8. get_data.php: get_data.php

Рабочий пример:

  1. Страна, штат, выбор города

Загрузка Zip-архива (БД не входит!):

  1. http://icecub.nl/selector.zip (в настоящее время недоступен)
  2. Общий анализ вирусов вышеуказанного файла

Я работаю над обновленным сценарием из-за популярных требований по этому вопросу. Это будет добавлено в ближайшее время.

Другие вопросы по тегам