从下拉框中获取文本

ut_et 发布于 2018-03-08 browser 最后更新 2018-03-08 01:01 579 浏览

这会得到我下拉菜单中选择的值。

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>
已邀请:

svero

赞同来自:

这是否得到正确答案?

document.getElementById("newSkill").innerHTML

ab_non

赞同来自:

document.getElementById('newSkill').options[document.getElementById('newSkill').selectedIndex].value 
应该管用

vfugit

赞同来自:

这应该返回所选值的文本值

var vSkill = document.getElementById('newSkill');
var vSkillText = vSkill.options[vSkill.selectedIndex].innerHTML;
alert(vSkillText);
道具:@Tanerax阅读这个问题,知道在别人发现之前问了什么,并回答了问题。 编辑:DownModed,因为我实际上完全阅读一个问题,并回答它,它是悲伤的世界。

onam

赞同来自:

根据您的示例HTML代码,以下是获取当前所选选项的显示文本的一种方法:

var skillsSelect = document.getElementById("newSkill");
var selectedText = skillsSelect.options[skillsSelect.selectedIndex].text;

riure

赞同来自:

这个作品我试了我的自我我以为我在这里发布它以防万一有人需要它...

document.getElementById("newSkill").options[document.getElementById('newSkill').selectedIndex].text;

vomnis

赞同来自:

    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)};              
            }
    }   

datque

赞同来自:

将更改事件附加到为每个选定选项获取文本的select并将它们写入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();

walias

赞同来自:

var selectoption = document.getElementById("dropdown");
var optionText = selectoption.options[selectoption.selectedIndex].text;

sea

赞同来自:

请尝试下面这是最简单的方法,它完美的作品

var newSkill_Text = document.getElementById("newSkill")[document.getElementById("newSkill").selectedIndex];

killo

赞同来自:

简单你可以使用Jquery而不是Javascript

$("#yourdropdownid option:selected").text();
尝试这个。

miste

赞同来自:

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>