Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Выбор из SELECT.
 
 автор: lElectroHardl   (30.08.2010 в 16:55)   письмо автору
 
 

Как сделать, что бы при выборе в 1-м селекте "Россия":
<select name="name'>
<option value='1">Россия</option>
<option value='2'>Украина</option>
</select>

во втором чекбоксе выводились все города России.
А при выборе "Украина", соответственно все города Украины.

*данные берутся из базы.

Помогите пожалуйста, а то JS вообще не знаю.

  Ответить  
 
 автор: АЯ   (30.08.2010 в 17:46)   письмо автору
 
   для: lElectroHardl   (30.08.2010 в 16:55)
 

http://codecenter.awardspace.com/selects.html

  Ответить  
 
 автор: bishake   (30.08.2010 в 17:51)   письмо автору
 
   для: lElectroHardl   (30.08.2010 в 16:55)
 

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

<select id='towns1' style="display: inline;">
<?php
//здесь получение данных из базы...
foreach ($fetch_array as $row) {
   echo 
"<option value='"$row['id'] ."'>"$row['value'] ."</option>\n";
}
?>
</select>

<select id='towns2' style="display: none;">
<?php
//здесь получение данных из базы...
foreach ($fetch_array as $row) {
   echo 
"<option value='"$row['id'] ."'>"$row['value'] ."</option>\n";
}
?>
</select>


Теперь, при изменении селекта со странами меняйте видимость селектов с городами:

<select name="name' onchange="showTownsList(this.value);">
<option value='1">Россия</option>
<option value='2'>Украина</option>
</select>

<script type='text/javascript'>
   function showTownsList(id) {
      document.getElementById('towns' + id).display = 'inline';
      document.getElementById('towns' + (id == '1' ? '2' : '1')).display = 'none';
   }
</script>

  Ответить  
 
 автор: lElectroHardl   (30.08.2010 в 18:52)   письмо автору
 
   для: bishake   (30.08.2010 в 17:51)
 

В том-то и дело, что селектов не 2, а 12 :). Но все-равно спасибо.

Еще такой вопрос, ко всем.

Как можно динамично добавлять/удалять поля (как писал bishake)?
Вот пример.

  Ответить  
 
 автор: АЯ   (30.08.2010 в 19:01)   письмо автору
 
   для: lElectroHardl   (30.08.2010 в 18:52)
 

Ответ всем.

Используйте поиск по форуму
Вопрос этот задавался, не раз, и не два...

  Ответить  
 
 автор: lElectroHardl   (30.08.2010 в 19:08)   письмо автору
 
   для: АЯ   (30.08.2010 в 19:01)
 

А как тема примерно называется?

  Ответить  
 
 автор: Агамемнон   (30.08.2010 в 19:46)   письмо автору
 
   для: lElectroHardl   (30.08.2010 в 19:08)
 

Забиваете select в Поиск и ищете подходящие темы.

  Ответить  
 
 автор: elenaki   (30.08.2010 в 19:48)   письмо автору
 
   для: Агамемнон   (30.08.2010 в 19:46)
 

Забиваете combobox в Поиск и ищете подходящие темы.

  Ответить  
 
 автор: bishake   (30.08.2010 в 22:38)   письмо автору
 
   для: lElectroHardl   (30.08.2010 в 18:52)
 

Я думаю, Вам сначала стоит почитать про технологию AJAX. Если Вы новичок в JS, то Вам будет пока сложновато реализовать такую задумку самостоятельно. Можно взять готовый пример (Вам оставили ссылку в первом ответе)

  Ответить  
 
 автор: lElectroHardl   (30.08.2010 в 23:04)   письмо автору
 
   для: bishake   (30.08.2010 в 22:38)
 

Да, понимаю я в этом маловато.
Но такой скрипт с горем пополам реализовал. Теперь постала другая проблема...

Как мне сделать динамическое добавление еще (и еще) таких 2-х Селектов?
Что бы при нажатии на кнопку "Добавить", появлялись еще 2 селекта (с теми же проверками, с той же выборкой из базы...)

Вот код (упростил до минимума):

<?
echo "<select>
// 1-й Селект с нужными параметрами
"
;
// запрос к базу, что бы выбрать начинку для 1-го Селект
// вывод этой начинки в цикле из базы
echo "
</select>

<select></select>"
// начало и КОНЕЦ 2-го селекта
?>
<!-- Часть скрипта JS <script>-->
<?php
// запрос к базу на вывод начинки 2-го Селекта (который помешается в скрипт)
// длинный-длинный вывод начинки скрипта JS (заменяет <option></option>)
?>
// еще часть скрипта JS </script>


Заранее большое спасибо.

  Ответить  
 
 автор: lElectroHardl   (31.08.2010 в 10:48)   письмо автору
 
   для: lElectroHardl   (30.08.2010 в 23:04)
 

Почитал, как советовали поиск и нечего толком не нашел.

Помогите сделать, что бы на JS эта форма смогла добавляться.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования