Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Почему не работает меню по select? не внимательность с id элементов 
:(
    Опции темы
vintyara
Дата 28.12.2005, 22:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 491
Регистрация: 24.3.2005
Где: Ode$$a

Репутация: нет
Всего: 2



Нужен мне скрипт следующий. Есть выпадающее меню с заведениями (бары, клубы и т.д.). Когда из него что-то выбираешь, наприме бары, должно рядом появлятся ещё одно выпадающее меню, с разными барами. Как такое зделать ?
Я пытался похожий скрипт переделать, но у меня ничего не получилось. Вот он :

Код

<html>
<head>
    <title>Untitled</title>
</head>
<script type="text/javascript" language="JavaScript">
<!--
function addField(choser, field) {
var val = choser.options[choser.selectedIndex].value;
var pole = document.getElementById(field);
var pole1 = document.getElementById(field);
if (val == "night_club") 
{
    pole.style.display = "block";
} else 
{
    pole.style.display = "none";
}

if (val == "cafe") 
{
    pole1.style.display = "block";
} else 
{
    pole1.style.display = "none";
}

}
// -->
</SCRIPT>



<body>
<table><tr><td>
    <select name="place" onchange="addField(this, 'qwe')"> 
    <option value="">Выбор</option>
    <option value="night_club">Клубы</option>
    <option value="cafe">Бары</option>
    </select>
</td>
<td>
    <select name="night_club" onkeydown="return blockEnter(event)" class="pole" id="qwe" style="display: none">
    <option value="club1">Клуб 1</option>
    <option value="club2">Клуб 2</option>
    </select>
    
    <select name="cafe" onkeydown="return blockEnter(event)" id="qwe" class="pole1" style="display: none">
    <option value="bar1">Бар1</option>
    <option value="bar2">Бар2</option>
    </select>

</td></tr></table>
</body>
</html>

PM MAIL ICQ   Вверх
Zeroglif
Дата 28.12.2005, 23:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 644
Регистрация: 22.9.2005

Репутация: 28
Всего: 66



vintyara

Скрипт "слегка" работает. smile Ты присвоил один и тот же id разным селектам, соответственно скрипт видит только последний прочитанный элемент с таким id, то есть "Бары" сработает. Из кода вижу, что name скрытых селектов явно недаром совпадает с value соответствующей опции, используй value, чтобы отображать нужный селект с нужным именем.
PM MAIL WWW   Вверх
Illuminaty
Дата 28.12.2005, 23:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


/*Антон Захаров*/
***


Профиль
Группа: Комодератор
Сообщений: 1238
Регистрация: 19.3.2005
Где: Россия, Казань

Репутация: 4
Всего: 56



Пользуемся поиском smile
и правилами
Цитата
1) Заголовок сообщения должен кратко отражать суть проблемы, нельзя давать заголовки типа "Помогите", "Срочно нужна помощь", "Есть вопрос", "Очень надо", "Сложный вопрос по программированию" и тому подобное.


Это сообщение отредактировал(а) Illuminaty - 28.12.2005, 23:24
PM MAIL ICQ   Вверх
vintyara
Дата 30.12.2005, 00:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 491
Регистрация: 24.3.2005
Где: Ode$$a

Репутация: нет
Всего: 2



Zeroglif а поддробнее чуток можно ? с кусочком примера smile


Illuminaty каюсь ! исправлюсь !
PM MAIL ICQ   Вверх
Zeroglif
Дата 30.12.2005, 01:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 644
Регистрация: 22.9.2005

Репутация: 28
Всего: 66



vintyara

Отталкиваясь от твоего примера...

Вызов:
Код

<select name="place" onchange="addField(this.value)">


Скрипт:
Код

<script type="text/javascript" language="JavaScript">
var v;
function addField(val) 
{
  var s = document.getElementsByName(val)[0];
  if (val)
  {
    if (v) v.style.display = 'none';
    s.style.display = 'block';
    v = s;
  }
  else if (v) v.style.display = 'none';
}
</script>


PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0471 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.