|
Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Надо сделать подгружающееся поле <SELECT> |
|
Надо сделать подгружающееся поле <SELECT>
|
![]() Guest |
Может кто подскажет как это можно реализовать или даст ссылку где это есть.
Задача такая: Есть двухуровневая система категорий. В одном поле 'селект' выбираем категории первого уровня и при выборе с сервера подгружается второе поле 'селект' с подкатегориями. P.S.: Скрипт, где сразу при выборе первого уровня появляется вложенные категории без подзагрузки не подойдет. |
|
Отправлено: 18:38, 10-04-2004 |
Engrossed by the Void Сообщения: 2229
|
Профиль | Отправить PM | Цитировать Это задача частного характера (если я правильно все понял), то есть относящаяся к классу подзадач (на них разбивают обычно что-то более массивное). Я сомневаюсь, что вы найдете отдельный скрипт который вам поможет, по сему рекомендую изучить вопрос самостоятельно и своими же силами реализовать задачку.
|
------- Отправлено: 02:57, 11-04-2004 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
![]() Guest |
Вы наверно немного не так поняли. Есть форма на странице с двумя полями SELECT. При выборе в первом поле SELECT, варианты для выбора появляются во втором поле. Например, есть список стран и городов. В первом поле выбираем страну, а во втором с сервера подгружается список городов, относящихся к этой стране. При выборе другой страны, подгружается список городов, которые к ней относяться. В инете иногда попадал на сайты с такими формами, но уже не помню какие, если б вспомнил, посмотрел как там это реализовано. Эта задача не такого уж и частного характера. На сайтах с примерами яваскриптов есть такое, где при выборе в первом поле, появляются варианты во втором, но они не загружаются с сервера, а написаны на странице.
P.S.: Может кто знает ссылки на такие сайты, подскажите, пожалуйста. |
Отправлено: 21:10, 13-04-2004 | #3 |
Engrossed by the Void Сообщения: 2229
|
Профиль | Отправить PM | Цитировать Угу... но я так и понял вопрос по первому вашему посту и остаюсь при своем мнении :\. На php решение этой подзадачи будет занимать 20-30 строк кода (смотря какой источник информации). Ведь вы всего лишь генерируете содержимое тега второго SELECT'а на основе данных из первого.
|
------- Отправлено: 03:18, 14-04-2004 | #4 |
![]() Guest |
Угу. Решение подразумевается таким: есть функция на javascript, которая срабатывает при событии onChange первого селекта. Она обращается к php-скрипту, который генерирует варианты для второго селекта, и выводит эти варианты во втором селекте. Вот собственно, такую бы функцию мне бы увидеть )
|
|
Отправлено: 23:37, 14-04-2004 | #5 |
Engrossed by the Void Сообщения: 2229
|
Профиль | Отправить PM | Цитировать Вся проблема в том, что без финта ушами нельзя обратиться к php скрипту на стороне сервера не перезагружая страничку (если надо вернуть какие-то данные конечно). Таким образом ваше решение подойдет если вы сначала покажите первый селект, а потом после обработки данных выбранных посетителем показать уже оба, причем во втором уже соответствующая первому информация...
|
------- Отправлено: 02:32, 15-04-2004 | #6 |
Ночной странник Сообщения: 4050
|
Профиль | Сайт | Отправить PM | Цитировать Guest
а что в этой задече сложного? выбирашь из бызы все названи категорий и подкатегорий сортируешь их. и выводишь в виде JS вставки. на изменение значения первого селекта вешаешь на JS функцию, которая перпеопределяет значения второго селект. Guest это сайте данным по ссылке я не увидел двойного селекта! |
------- Отправлено: 18:44, 16-10-2004 | #7 |
Engrossed by the Void Сообщения: 2229
|
Профиль | Отправить PM | Цитировать Vlad Drakula
Это реклама... потому и не увидел ![]() |
------- Отправлено: 02:47, 17-10-2004 | #8 |
just mar Сообщения: 3904
|
Профиль | Отправить PM | Цитировать Vlad Drakula
Prisoner а я и ссылки не увидела ![]() ![]() |
Отправлено: 14:20, 17-10-2004 | #9 |
PerlMaster
Сообщения: n/a |
Решение 1:
по событию "onChange" открываешь попап функцией window.open(). В попапе выводишь яваскрипт, который изменяет содержимое второго <SELECT>. Доступ к окну-родителю через свойство "opener". В конце попап сам себя закрывает. Это решение может быть неприемлемо из-за распространненности блокировщиков всплывающих окон. Решение 2: создается фреймовая структура. Первый (основной) фрейм - для отображения информации - занимает 100% места. Второй (невидимый) фрейм используется для загрузки данных для второго селекта. Инициировать загрузку данных в невидимый фрейм можно несколькими способами: (код может содержать неточности, демонстрируется только идея) а. window.parent.frames["hidden"].href="..." б. window.open("...", "hidden" ![]() в. Создать скрытую форму: <form action="..." target="hidden" name="form2"> <input type="hidden" name="city"> </form> Вызвать метод "sibmit". forms["form2"].city.value="..." forms["form2"].submit(). [s]Исправлено: PerlMaster, 15:20 17-10-2004[/s] |
Отправлено: 15:19, 17-10-2004 | #10 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Как сделать запрет ввода букв в поле для ввода input | zvezda_t | Вебмастеру | 2 | 28-12-2009 15:52 | |
Надо сделать сайт. Как? | VM007 | Вебмастеру | 37 | 22-05-2009 20:21 | |
Надо сделать пару кнопок! | ptvs | Вебмастеру | 1 | 21-11-2005 21:50 | |
Мне надо сделать логотип. помогите. | slaine | Вебмастеру | 2 | 12-03-2005 03:55 | |
как сделать поле посреди сайта с полосой прокрутки? | Denis Shutka | Вебмастеру | 8 | 07-02-2005 15:26 |
|