Вопрос:

Получение текста из выпадающего списка

javascript dom browser

179806 просмотра

12 ответа

43080 Репутация автора

Это получает значение того, что выбрано в моем выпадающем меню.

document.getElementById('newSkill').value

Однако я не могу узнать, какое свойство нужно искать для текста, который в данный момент отображается в раскрывающемся меню. Я попробовал «текст», затем посмотрел на W3Schools, но у него не было ответа, кто-нибудь здесь знает?

Для тех, кто не уверен, вот HTML-код для выпадающего списка.

<select name="newSkill" id="newSkill">
    <option value="1">A skill</option>
    <option value="2">Another skill</option>
    <option value="3">Yet another skill</option>
</select>
Автор: Teifion Источник Размещён: 08.08.2008 01:36

Ответы (12)


1 плюс

842 Репутация автора

Получает ли это правильный ответ?

document.getElementById("newSkill").innerHTML
Автор: Brian Childress Размещён: 08.08.2008 01:40

7 плюса

730 Репутация автора

document.getElementById('newSkill').options[document.getElementById('newSkill').selectedIndex].value 

Должно сработать

Автор: Thejesh GN Размещён: 08.08.2008 01:41

8 плюса

5193 Репутация автора

Это должно вернуть текстовое значение выбранного значения

var vSkill = document.getElementById('newSkill');

var vSkillText = vSkill.options[vSkill.selectedIndex].innerHTML;

alert(vSkillText);

Реквизит: @Tanerax за то, что прочитал вопрос, знал, что спросили, и отвечал на него, прежде чем другие поняли это.

Редактировать: DownModed, потому что я на самом деле полностью прочитал вопрос и ответил на него, печальный мир это.

Автор: Tanerax Размещён: 08.08.2008 01:52

120 плюса

36609 Репутация автора

Решение

Основываясь на вашем примере HTML-кода, вот один из способов получить отображаемый текст выбранной опции:

var skillsSelect = document.getElementById("newSkill");
var selectedText = skillsSelect.options[skillsSelect.selectedIndex].text;
Автор: Patrick McElhaney Размещён: 08.08.2008 01:54

4 плюса

51 Репутация автора

Это работает, я попробовал это сам, я думал, что выложить это здесь на случай, если кому-то это нужно ...

document.getElementById("newSkill").options[document.getElementById('newSkill').selectedIndex].text;
Автор: Lilith Размещён: 02.02.2013 07:35

0 плюса

319 Репутация автора

    var ele = document.getElementById('newSkill')
    ele.onchange = function(){
            var length = ele.children.length
            for(var i=0; i<length;i++){
                if(ele.children[i].selected){alert(ele.children[i].text)};              
            }
    }   
Автор: raton Размещён: 12.05.2014 06:45

2 плюса

21 Репутация автора

Присоединяет событие изменения к выбору, которое получает текст для каждого выбранного параметра и записывает их в элемент div.

Вы можете использовать JQuery это очень лицо и успешным и простым в использовании

<select name="sweets" multiple="multiple">
  <option>Chocolate</option>
  <option>Candy</option>
  <option>Taffy</option>
  <option selected="selected">Caramel</option>
  <option>Fudge</option>
  <option>Cookie</option>
</select>
<div></div>


$("select").change(function () {
  var str = "";

  $("select option:selected").each(function() {
    str += $( this ).text() + " ";
  });

  $( "div" ).text( str );
}).change();
Автор: shekh danishuesn Размещён: 01.10.2015 11:55

0 плюса

21 Репутация автора

var selectoption = document.getElementById("dropdown");
var optionText = selectoption.options[selectoption.selectedIndex].text;
Автор: Debanjan Roy Размещён: 01.02.2016 05:00

0 плюса

1 Репутация автора

Пожалуйста, попробуйте ниже это самый простой способ, и он отлично работает

var newSkill_Text = document.getElementById("newSkill")[document.getElementById("newSkill").selectedIndex];
Автор: IbrahimSediq Размещён: 29.03.2016 05:52

9 плюса

537 Репутация автора

Просто вы можете использовать Jquery вместо Javascript

$("#yourdropdownid option:selected").text();

Попробуй это.

Автор: BOBIN JOSEPH Размещён: 23.05.2017 09:26

1 плюс

11 Репутация автора

function getValue(obj)
{  
   // it will return the selected text
   // obj variable will contain the object of check box
   var text = obj.options[obj.selectedIndex].innerHTML ; 

}

HTML-фрагмент

 <asp:DropDownList ID="ddl" runat="server" CssClass="ComboXXX" 
  onchange="getValue(this)">
</asp:DropDownList>
Автор: Muhammad Tariq Ahmed Khan Размещён: 25.10.2017 05:40

0 плюса

190 Репутация автора

Вот простой и короткий метод

document.getElementById('elementID').selectedOptions[0].innerHTML
Автор: Manpreet Singh Dhillon Размещён: 13.02.2019 11:19
Вопросы из категории :
32x32