Get selected value in dropdown list using JavaScript Get selected value in dropdown list using JavaScript javascript javascript

Get selected value in dropdown list using JavaScript


If you have a select element that looks like this:

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

Running this code:

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

Would make strUser be 2. If what you actually want is test2, then do this:

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

Which would make strUser be test2


Plain 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 :selected").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;

This is correct and should give you the value.Is it the text you're after?

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

So you're clear on the terminology:

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

This option has:

  • Index = 0
  • Value = hello
  • Text = Hello World