Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Переход из выпадающего меню (https://javascript.ru/forum/dom-window/3458-perekhod-iz-vypadayushhego-menyu.html)

rolekc 21.04.2009 22:33

Переход из выпадающего меню
 
Привет. Нужна помощь. Я не просто чайник в JS, я совсем не-фирштейн.
У меня есть первый выпадающий список, в котором путём выбора пункта определяется содержание второго выпадающего списка.
Ну примерно вот так:

<html>
<head>
<title>Субъекты Российской Федерации</title>
<script type="text/javascript">
var regiondb = new Object()

regiondb["republik"] = [{value:"1", text:"Республика Адыгея"},
{value:"2", text:"Республика Алтай"},
{value:"3", text:"Республика Башкортостан"},
{value:"4", text:"Республика Бурятия"},
{value:"5", text:"Республика Дагестан"}];

regiondb["krai"] = [{value:"1", text:"Алтайский край"},
{value:"2", text:"Забайкальский край"},
{value:"3", text:"Камчатский край"},
{value:"4", text:"Краснодарский край"},
{value:"5", text:"Красноярский край"}];


regiondb["oblast"] = [{value:"1", text:"Амурская область"},
{value:"2", text:"Архангельская область"},
{value:"3", text:"Астраханская область"},
{value:"4", text:"Белгородская область"},
{value:"5", text:"Брянская область"}];

regiondb["federal"] = [{value:"1", text:"Москва"},
{value:"2", text:"Санкт-Петербург"}];

regiondb["autonom"] = [{value:"1", text:"Еврейская автономная область"},
{value:"2", text:"Ханты-Мансийский автономный округ"},
{value:"3", text:"Чукотский автономный округ"},
{value:"4", text:"Ямало-Ненецкий автономный округ"}];


function setCities(chooser) {
var cityChooser = chooser.form.elements["region"];
// обнуляем список
cityChooser.options.length = 0;
// получаем value для массива regiondb
var choice = chooser.options[chooser.selectedIndex].value;
var db = regiondb[choice];
// вставляем первый элемент
cityChooser.options[0] = new Option("Выбор: ", "", true, false);
if (choice != "") {
for (var i = 0; i < db.length; i++) {
cityChooser.options[i + 1] = new Option(db[i].text, db[i].value);
}
}
}
</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></head>
<body>
<form name="dealers" action="">
<select name="rosfed" onchange="setCities(this)">
<option value="" selected>Выбор:</option>
<option value="republik">Республики РФ </option>
<option value="krai">Края РФ</option>
<option value="oblast">Области РФ</option>
<option value="federal">Города федерального значения РФ</option>
<option value="autonom">Автономная область и автономные округа РФ</option>

</select>&nbsp;
<select name="region">
<option value="" selected>Выбор: </option>
</select>
</form>
</body>
</html>

Нужно, чтобы переход осуществлялся не при окончательном выборе пункта списка, а при дополнительном нажатии на кнопку. Как сделать?:help:

x-yuri 23.04.2009 19:44

сейчас обработчик назначен на событие change select'а, а надо создать input type="button", например, и переназначить тот обработчик на событие click кнопки


Часовой пояс GMT +3, время: 18:25.