Зависимые списки!
Здравствуйте! Возникла задача создать интерфес ввода населённого пункта по шагово, сначала пользователь выбирает страну, поотм регион и так далее... Классическая задача, но я до этого только вставлял готовые javaскрипты, куда надо и не разрабатывал их сам, сейчас надо релаизовать это самому... AJAX не подходит... поэтому поступил следющим образом: Формирую на стороне сервера списки
по типу: Видимый <select size="1" onchange="List_block();" name="region_id" class="block" id="parent"> <option value="23" id="23">Выбрать страну</option> <option value="231">Россия</option> <option value="258">Республика беларусь</option> <option value="264">Латвия</option> <option value="266">Украина</option> <option value="272">Эстония</option> <option value="274">Литва</option> <option value="276">Казахстан</option> </select> Скрытые: Их несколько для каждой страны Код:
<select size="1" onchange="List_block(3);" name="region_258" class="hidden" id="258"> Меняю значение свойства display на bloc ниже приведённым скриптом: function List_block(){ var a = document.getElementById("parent").value^; document.getElementById(a).style.display='none'^; document.getElementById(a).style.display='block'^; var key=a^; } Может эта реализация и через опу, но я делал по методу минимум JS:) ВОПРОС: Списки я выбираю но, допустим пользователь выбрал Россию, а потом передумал выбрал Беларусь, как спрятать список с регионами России. перед каждым новым выбором скрывать списки открытые до этого и только после этого открывать новый... Спасибо. |
Цитата:
Если так - то таки да, через опу. :yes: |
DSHA,
Есть на jQuery древовидное меню от devote - можно его приспособить под эту штуку http://javascript.ru/forum/dom-windo...tml#post182559 по клику на нужную ссылку заносим нумер в инпут, - на серве нумер идентифицируем со всеми шагами выбора Хотя можно и на клиенте выбрать всю последовательность выбора, к примеру проставив data="Тут что-то" в каждый тег LI |
Цитата:
|
Цитата:
|
Цитата:
Если сделать свои комбобоксы - можно и поинтереснее придумать решение... |
Полсе изучения данной проблемы решил сделать вот так как в этом примере:
http://www.linkexchanger.su/2008/39.html Всё прикрутил теперь думаю как из input отравлять на сервер не название города, а его ID в БД |
Как ещё паралельно создавть какой нибудь input hidden и отправлять на сервер его значение?
<script type="text/javascript"> 02 $(document).ready(function(){ 03 $("#example").autocompleteArray([ 04 "Магадан", 05 "Магас", 06 "Магнитогорск", 07 "Майкоп", 08 ........ 09 "Муром", 10 "Мценск", 11 "Мыски", 12 "Мытищи", 13 "Мышкин" 14 ], 15 { 16 delay:10, 17 minChars:1, 18 matchSubset:1, 19 autoFill:true, 20 maxItemsToShow:10 21 } 22 ); 23 }); 24 </script> |
DSHA,
Если использовать тот скрипт ? Или ? ========================== То можно по событию конечного выбора, ( клику по ссылке - не переходя по ссылке: Либо: отправлять форму с нужным городом Либо добавлять в форму поле с городом(если чел может выбрать несколько вариантов одновременно) - а окончательную отправку делать по кнопке |
Окончательную отправку делать по кнопке, но
Если использовать скрипт jQuery Autocomplete: автозаполнениет то по кнопке я на сервер отправлю название города, а мне необходимо отправить id_город... Вот я и подумал как этот скрипт заставить формировать параллельно ещё один input, но скрытый( hidden) значением которого и будет id_города.и отправлять это значение из формы на сервер по кнопке. эта форма регистраци пользователя на сайте он указывает свое место положение. |
Часовой пояс GMT +3, время: 06:48. |