Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.11.2010, 03:22
Кандидат Javascript-наук
Отправить личное сообщение для vah-smile Посмотреть профиль Найти все сообщения от vah-smile
 
Регистрация: 31.10.2009
Сообщений: 116

поле SELECT и его значение
Как узнать значение из SELECT не по значению VALUE, а то, что прописано в OPTION? Тоисть если мы выбрали VALUE=1 то как получить слово "Москва"?

<select class="select" id="ot">
    <option value="0" class="silver">- выберите город -</option>
    <option value="1">Москва</option>
    <option value="2">С. Петербург</option>
</select>
Ответить с цитированием
  #2 (permalink)  
Старый 04.11.2010, 08:25
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Сообщение от vah-smile
Как узнать значение из SELECT не по значению VALUE, а то, что прописано в OPTION?
У селекта есть свойство selectedIndex, там хранится номер выбраного оптион... Зная это и получив массив всех оптион селекта бери innerHTML нужного оптион.

Вот примерчик из МСДН

var coll = document.all.tags("SELECT");
if (coll.length>0) {
    for (i=0; i< coll(0).options.length; i++)
        alert("Element " + i + " is " + coll(0).options(i).text +
		    " and has the value " + coll(0).options(i).value);
}
Ответить с цитированием
  #3 (permalink)  
Старый 04.11.2010, 12:50
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от ksa
Вот примерчик из МСДН
Если проводить аналогию со средневековьем, то за такие примеры сжигали на костре!

<form action="" method="post">
    <select>
        <option selected="selected" disabled="disabled">- выберите -</option>
        <option>1</option>
        <option>2</option>
    </select>
</form>
<script type="text/javascript">
window.onload = function(){
    document.getElementsByTagName('select')[0].onchange = function(){
        alert('выбрано: ' + this.options[this.selectedIndex].value); //если в value будут значения то заменить на innerHTML 
    };
};
</script>

Последний раз редактировалось monolithed, 04.11.2010 в 12:55.
Ответить с цитированием
  #4 (permalink)  
Старый 04.11.2010, 19:52
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

monolithed,
Повторяюсь уже ))) но где value здесь <option>1</option> ? тут только text!!!
Сообщение от vah-smile
Как узнать значение из SELECT не по значению VALUE, а то, что прописано в OPTION? Тоисть если мы выбрали VALUE=1 то как получить слово "Москва"?
<form action="" method="post" >
    <select class="select" id="ot" onchange="alert(this.options[this.selectedIndex].text);">
    <option value="0" class="silver">- выберите город -</option>
    <option value="1">Москва</option>
    <option value="2">С. Петербург</option>
    </select>
</form>
Ответить с цитированием
  #5 (permalink)  
Старый 04.11.2010, 22:42
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Сообщение от monolithed
за такие примеры сжигали на костре
Не к тому претензии... Копирнул что было под рукой...
Ответить с цитированием
  #6 (permalink)  
Старый 04.11.2010, 23:12
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от рони
Повторяюсь уже ))) но где value здесь <option>1</option> ?
В конкретном случае работает.
К тому же я сделал сноску, что если будет использоваться value, то заменить на innerHTML
Сообщение от рони
тут только text!!!
не забывайте тогда, что:
node.text || node.textContent

<form action="" method="post">
    <select>
        <option selected="selected" disabled="disabled"  value="0">- выберите -</option>
        <option value="1">Москва</option>
        <option value="2">С. Петербург</option>
    </select>
</form>
<script type="text/javascript">
window.onload = function(){
    document.getElementsByTagName('select')[0].onchange = function(){
        alert('выбрано: ' + this.options[this.selectedIndex].innerHTML);
    };
};
</script>

Последний раз редактировалось monolithed, 04.11.2010 в 23:20.
Ответить с цитированием
  #7 (permalink)  
Старый 05.11.2010, 00:42
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

Сообщение от monolithed
В конкретном случае работает.
В Google Chrome и Internet Explorer проверьте ваш код с value
и у элемента Option есть свойство кросбраузерное техт поэтому нет необходимости в
Сообщение от monolithed
не забывайте тогда, что:
node.text || node.textContent
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как передать значение переменной в IFRAME в поле формы JS-ом из самой страницы? DeUre Общие вопросы Javascript 14 17.12.2013 16:37
Получить координаты курсора в текстовом поле в пикселях prike Events/DOM/Window 4 23.05.2013 04:35
Изменить значение переменной функции через select Fenec Элементы интерфейса 5 13.08.2010 15:32
Значение тэга select blasted Элементы интерфейса 4 07.07.2010 14:45
Как вывести на экран значение функции SELECT MAX(id) Владдд Серверные языки и технологии 3 25.01.2009 16:07