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

HTML+CSS+JavaScript

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

 

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

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

тема: Как скриптом установить нужную опцию в теге select?
 
 автор: coloboc66   (26.01.2012 в 11:44)   письмо автору
 
 

Имею выпадающий список такого вида;
<select id= "timezone" name="timezone">
<option value="-12">(GMT-12:00) Меридиан смены дат (запад)</option>
<option value="-11">(GMT-11:00) о. Мидуэй, Самоа</option>
<option value="-10">(GMT-10:00) Гавайи</option>
<option value="-9">(GMT-09:00) Аляска</option>
</select>

Нужно ява-скриптом установить опцию, соответствующую переменной timezone. Например:
<script>
var timezone=-10;//это к примеру
document.getElementById('timezone')... //НЕ ЗНАЮ, ЧТО ДЕЛАТЬ ДАЛЬШЕ
</script>

Как установить скриптом, в данном случае, третью опцию?
Спасибо.

  Ответить  
 
 автор: Lotanaen   (26.01.2012 в 12:26)   письмо автору
 
   для: coloboc66   (26.01.2012 в 11:44)
 

document.getElementById('timezone').value = "-11"

  Ответить  
 
 автор: АЯС   (26.01.2012 в 13:22)   письмо автору
 
   для: coloboc66   (26.01.2012 в 11:44)
 

Во-первых, английское слово timezone у вас использовано в HTML-коде в качестве значения для id и name тега <SELECT>.
Поэтому с вашей стороны весьма неразумным будет использовать это же слово в качестве имени для переменной var timezone - могут произойти конфликты, и вы будете долго-долго искать причину.
-----

Во-вторых, если я правильно понял, ваш вопрос можно перевести с вашего птичьего языка на человеческий следующим образом: как выделить опшен по значению его value?

Даю ответ.
Сначала - человеческими словами.
Надо перебрать циклом коллекцию опшенов и на каждом шаге цикла сравнивать значение value опшена со значением переменной. Как только они совпадут, надо соответствующему опшену установить свойство "выделенный" и выйти из цикла.

Теперь - код скрипта:
<script>
var timezone123 = -10; //имя переменной изменено, читай "во-первых"
for (var obj = document.getElementById ('timezone').options, j = 0, lj = obj.length; j < lj; j++)
if (obj [j].value == timezone123) {document.getElementById ('timezone').options [j].selected = 1; break}
</script>
Примечание к коду скрипта: если значение переменной timezone123 не будет найдено среди имеющихся value у опшенов, то цикл пройдёт полностью, скрипт завершит свою работу и выделенным по умолчанию останется самый первый опшен (с индексом == 0)

  Ответить  
 
 автор: coloboc66   (26.01.2012 в 15:39)   письмо автору
 
   для: АЯС   (26.01.2012 в 13:22)
 

Предыдущий ответ тоже работает. Или он будет работать не во всех браузерах?

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

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