Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как изменить значение одного <select> при зменении значения другого

6.0K
23 октября 2005 года
_Greezlee_
41 / / 17.09.2005
У меня на форме имеется два элемента <select> один долен выбирать бд, а другой таблицы из этой бд. Подскажите как это сделать - в смысле изменять значения второго <select>.
7.9K
23 октября 2005 года
ШМИТ
47 / / 17.10.2005
Цитата:
Originally posted by _Greezlee_
У меня на форме имеется два элемента <select> один долен выбирать бд, а другой таблицы из этой бд. Подскажите как это сделать - в смысле изменять значения второго <select>.



Юзай JavaScript. Вот пример

Код:
<form name="doublecombo">


<select name="example" size="1" &#111;&#110;Change="redirect(this.options.selectedIndex)">
<option>Technology Sites</option>
<option>News Sites</option>
<option>Search Engines</option>
</select>
<select name="stage2" size="1">
<option value="http://javascriptkit.com">JavaScript Kit</option>
<option value="http://www.news.com">News.com</option>
<option value="http://www.wired.com">Wired News</option>
</select>
<input type="button" name="test" value="Go!"
&#111;&#110;Click="go()">
</p>

<script>
<!--

var groups=document.doublecombo.example.options.length
var group=new Array(groups)
for (i=0; i<groups; i++)
group=new Array()

group[0][0]=new Option("JavaScript Kit","http://javascriptkit.com")
group[0][1]=new Option("News.com","http://www.news.com")
group[0][2]=new Option("Wired News","http://www.wired.com")

group[1][0]=new Option("CNN","http://www.cnn.com")
group[1][1]=new Option("ABC News","http://www.abcnews.com")

group[2][0]=new Option("Hotbot","http://www.hotbot.com")
group[2][1]=new Option("Infoseek","http://www.infoseek.com")
group[2][2]=new Option("Excite","http://www.excite.com")
group[2][3]=new Option("Lycos","http://www.lycos.com")

var temp=document.doublecombo.stage2

function redirect(x){
for (m=temp.options.length-1;m>0;m--)
temp.options[m]=null
for (i=0;i<group[x].length;i++){
temp.options=new Option(group[x].text,group[x].value)
}
temp.options[0].selected=true
}

function go(){
location=temp.options[temp.selectedIndex].value
}
//-->
</script>

</form>
6.0K
24 октября 2005 года
_Greezlee_
41 / / 17.09.2005
Предложенный способнемного не подходит, так здесь должно быть заранее известно новое содержимое второго селекта. А у меня оно должно выбираться из бд.
Можешь подсказать, что нибудь подходящее для этого.
7.9K
24 октября 2005 года
ШМИТ
47 / / 17.10.2005
Цитата:
Originally posted by _Greezlee_
Предложенный способнемного не подходит, так здесь должно быть заранее известно новое содержимое второго селекта. А у меня оно должно выбираться из бд.
Можешь подсказать, что нибудь подходящее для этого.


Если хочешь чтобы все проходило без перезагрузки страницы, то это единственный способ. Во второй селект загоняешь все таблицы (их будет наверное не так уж и много) и по первому селекту выбираешь.
По другому только с перезагрузкой страницы.

299
24 октября 2005 года
3D Bob
885 / / 18.04.2005
Цитата:
Originally posted by _Greezlee_
Предложенный способнемного не подходит, так здесь должно быть заранее известно новое содержимое второго селекта. А у меня оно должно выбираться из бд.
Можешь подсказать, что нибудь подходящее для этого.


Тогда тебе нужно автоматически подгружать данные.
Недавно обсуждалось как это сделать.

14K
24 октября 2005 года
6epkyT
1 / / 24.10.2005
Цитата:
Originally posted by ШМИТ Юзай JavaScript. Вот пример ...


А целесообразно ли использование такого механизма, если например требуется по имени таблицы в БД формировать подчиненный select со списком полей?

253
17 ноября 2005 года
Proger_XP
1.5K / / 07.08.2004
Цитата:
Originally posted by _Greezlee_
Предложенный способнемного не подходит, так здесь должно быть заранее известно новое содержимое второго селекта. А у меня оно должно выбираться из бд.
Можешь подсказать, что нибудь подходящее для этого


Можешь юзать Flash
С помощью XML узнаешь таблицы и делаешь динамическую checkbox
Если нужно будет и поля выбирать, то тоже делаешь запрос и строишь новую checkbox
З.Ы: __Greezlee__, посмотри личные сообщения

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог