使用JavaScript在下拉列表中获取选定的值?

如何使用JavaScript从下拉列表中获取选定的值?

我尝试了下面的方法,但它们都返回选定的索引而不是值:

var as = document.form1.ddlViewBy.value;
var e = document.getElementById("ddlViewBy");
var strUser = e.options[e.selectedIndex].value;

//This is one of the simplest form by (Narendra Kottamidde) :

var value = document.getElementById("ddlViewBy").value;

如果你有一个看起来像这样的select元素:

<select id="ddlViewBy">
  <option value="1">test1</option>
  <option value="2" selected="selected">test2</option>
  <option value="3">test3</option>
</select>

运行此代码:

var e = document.getElementById("ddlViewBy");
var strUser = e.options[e.selectedIndex].value;

将使strUser2 。 如果你真正想要的是test2 ,那么这样做:

var e = document.getElementById("ddlViewBy");
var strUser = e.options[e.selectedIndex].text;

这将使strUser成为test2


普通JavaScript:

var e = document.getElementById("elementId");
var value = e.options[e.selectedIndex].value;
var text = e.options[e.selectedIndex].text;

jQuery的:

$("#elementId :selected").text(); // The text content of the selected option
$("#elementId").val(); // The value of the selected option

AngularJS:(http://jsfiddle.net/qk5wwyct):

// HTML
<select ng-model="selectItem" ng-options="item as item.text for item in items">
</select>
<p>Text: {{selectItem.text}}</p>
<p>Value: {{selectItem.value}}</p>

// JavaScript
$scope.items = [{
  value: 'item_1_id',
  text: 'Item 1'
}, {
  value: 'item_2_id',
  text: 'Item 2'
}];

var strUser = e.options[e.selectedIndex].value;

这是正确的,应该给你价值。 它是你之后的文字吗?

var strUser = e.options[e.selectedIndex].text;

所以你清楚的术语:

<select>
    <option value="hello">Hello World</option>
</select>

这个选项有:

  • 索引= 0
  • 价值=你好
  • Text = Hello World
  • 链接地址: http://www.djcxy.com/p/4989.html

    上一篇: Get selected value in dropdown list using JavaScript?

    下一篇: jquery getting all dropdown values