Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 10.09.2013, 21:04
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070


<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
</head>

<body>
<select id="id3" name="option[230]" class="select-menu">
<option value="21" points="0" price_prefix="+" price="0.0000">1</option>
<option value="22" points="0" price_prefix="+" price="1000.0000">2(+1000.00 р.)</option>
<option value="23" points="0" price_prefix="+" price="2000.0000" selected="selected"   >3(+2000.00 р.)</option>
<option value="24" points="0" price_prefix="+" price="3000.0000">4(+3000.00 р.)</option>
</select>
<script>
var select = document.getElementById('id3');
var indx = select.selectedIndex || 0;
alert(select.options[indx].text);
</script>
</body>

</html>
Ответить с цитированием
  #12 (permalink)  
Старый 10.09.2013, 22:37
Аспирант
Отправить личное сообщение для And5 Посмотреть профиль Найти все сообщения от And5
 
Регистрация: 01.09.2013
Сообщений: 40

выводит!! при загрузке страницы только, первое значение. Надо обработчик какой-нибудь что-ли
Ответить с цитированием
  #13 (permalink)  
Старый 10.09.2013, 23:03
Аспирант
Отправить личное сообщение для And5 Посмотреть профиль Найти все сообщения от And5
 
Регистрация: 01.09.2013
Сообщений: 40

Супер!, только не алертом надо, а в отдельный блок. Сорри, только сейчас понял, что не совсем корректно вопрос задал. Имеется: селект, который при загрузке страницы имеет опшн 0. Надо: выводить значение опции (не вэлью, а текст в тэгах option) в отдельный блок при выборе опции мышкой. Видимо функция для обработчика нужна, чтоб менялось содержимое при выборе.
Ответить с цитированием
  #14 (permalink)  
Старый 10.09.2013, 23:51
Аспирант
Отправить личное сообщение для And5 Посмотреть профиль Найти все сообщения от And5
 
Регистрация: 01.09.2013
Сообщений: 40

<select id="id3" name="option[230]" class="select-menu" onchange="kategory();">
<option value="21" points="0" price_prefix="+" price="0.0000">1                                                               </option>
<option value="22" points="0" price_prefix="+" price="1000.0000">2                                                               
(+1000.00 р.)     
</option>
<option value="23" points="0" price_prefix="+" price="2000.0000">3                                                               
(+2000.00 р.)     
</option>
<option value="24" points="0" price_prefix="+" price="3000.0000">4                                                               
(+3000.00 р.)    
</option>
</select>


<script type="text/javascript">
function kategory()
{
var selectedOption = document.getElementById('id3').selectedOptions[0];
document.getElementById('selectedOption').innerHTML = selectedOption.innerHTML;
}
</script>

Да заработало!! Только при начальной загрузке страницы не отображает, как решить? onload написать?

Последний раз редактировалось And5, 11.09.2013 в 00:03.
Ответить с цитированием
  #15 (permalink)  
Старый 11.09.2013, 01:05
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Сообщение от danik.js
var selectedOption = document.getElementById('id3').selectedOptions[0];
где прочитать что это за свойство и какими браузерами поддерживается selectedOptions ?
Ответить с цитированием
  #16 (permalink)  
Старый 11.09.2013, 07:13
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Хм, действительно, оказывается это HTML5 свойство и оно имеет хреновую поддержку среди браузеров (старых по крайней мере): http://stackoverflow.com/questions/1...ions-broken-or
Так что лучше избегать его использования пока что.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #17 (permalink)  
Старый 11.09.2013, 10:27
Аспирант
Отправить личное сообщение для And5 Посмотреть профиль Найти все сообщения от And5
 
Регистрация: 01.09.2013
Сообщений: 40

дааа, в ie не работает: SCRIPT5007: Не удалось получить свойство "0" ссылки, значение которой не определено или является NULL
Спотыкается на этой строчке:
window.opener.kategory()

в мозилле тоже, но ie только kategory() не работает, а в ней window.opener не понимает
и что делать?
Ответить с цитированием
  #18 (permalink)  
Старый 11.09.2013, 10:36
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Почему то думал что это старое свойство, так как свойства selectedIndex недостаточно , учитывая что селекты могут быть такими:
<select multiple size=2>
  <option>Bla Bla Bla</option>
  <option>Bla Bla Bla</option>
</select>

Как же в таких случаях получать массив выбраных опшнов?
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #19 (permalink)  
Старый 11.09.2013, 10:54
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

danik.js,
Цитата:
Если select допускает множественный выбор (атрибут multiple), то значения можно получить/установить, сделав цикл по select.options:
http://learn.javascript.ru/form-elements#select-option
Ответить с цитированием
  #20 (permalink)  
Старый 11.09.2013, 10:59
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Ну это понятно - тупой перебор в цикле.
Мне вот интересно о чем думал человек, предложивший свойство multiple, но не подумавший о том, как же получить список выбранных опшнов.
__________________
В личку только с интересными предложениями
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как вывести сообщение только когда селект не выбран imediasun1 Элементы интерфейса 5 11.05.2013 17:40
Как ввести в поле ввода значение где есть javascript MOZG Общие вопросы Javascript 8 19.04.2013 10:28
Как зафиксировать постоянно меняющееся значение Kaviton Элементы интерфейса 1 08.01.2012 17:27
Как в IE динамически установить значение события onClick? Гость Элементы интерфейса 6 16.01.2011 23:46
Переменная от переменной или как к имени переменной конкатенировать значение другой Aderba jQuery 5 12.11.2008 15:25