这将获得我在下拉菜单中选择的任何值。
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>
根据您的示例HTML代码,这是获取当前所选选项的显示文本的一种方法:
var skillsSelect = document.getElementById("newSkill");
var selectedText = skillsSelect.options[skillsSelect.selectedIndex].text;
var selectoption = document.getElementById("dropdown");
var optionText = selectoption.options[selectoption.selectedIndex].text;
请尝试以下这是最简单的方法,它的工作完美
var newSkill_Text = document.getElementById("newSkill")[document.getElementById("newSkill").selectedIndex];
这是一个简单而简短的方法
document.getElementById('elementID').selectedOptions[0].innerHTML
您可以使用Jquery而不是Javascript
$("#yourdropdownid option:selected").text();
尝试这个。
这应该返回所选值的文本值
var vSkill = document.getElementById('newSkill');
var vSkillText = vSkill.options[vSkill.selectedIndex].innerHTML;
alert(vSkillText);
道具:@Tanerax用于阅读问题,了解所提出的问题并在其他人发现之前回答问题。
编辑:DownModed,因为我实际上完全读了一个问题,并回答了它,这是一个悲伤的世界。
document.getElementById('newSkill').options[document.getElementById('newSkill').selectedIndex].value
应该管用
这项工作我尝试了我自己,我想我发布在这里,万一有人需要它...
document.getElementById("newSkill").options[document.getElementById('newSkill').selectedIndex].text;
将更改事件附加到选择,该选项获取每个所选选项的文本并将其写入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();
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>
这会得到正确的答案吗?
document.getElementById("newSkill").innerHTML
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)};
}
}