如何获得一个下拉选定的索引

我有一个正常的下拉,我想获得当前选定的指标,并把它放在一个variables。 jquery或JavaScript。 jquery发生。

<select name="CCards"> <option value="0">Select Saved Payment Method:</option> <option value="1846">test xxxx1234</option> <option value="1962">test2 xxxx3456</option> </select> 

$("select[name='CCards'] option:selected")应该做的伎俩

有关更多详细信息,请参阅jQuery文档: http : //api.jquery.com/selected-selector/

更新:如果您需要所选选项的索引 ,则需要使用.index() jquery方法:

 $("select[name='CCards'] option:selected").index() 

这将获得更改时所选选项的索引:

 $('select').change(function(){ console.log($('option:selected',this).index()); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <select name="CCards"> <option value="0">Select Saved Payment Method:</option> <option value="1846">test xxxx1234</option> <option value="1962">test2 xxxx3456</option> </select> 

如果你真的在寻找所select的选项的索引号(而不是值),那么它将是

 document.forms[0].elements["CCards"].selectedIndex /* You may need to change document.forms[0] to reference the correct form */ 

或者使用jQuery

 $('select[name="CCards"]')[0].selectedIndex 

实际的索引可以作为select元素的属性。

 var sel = document.getElementById('CCards'); alert(sel.selectedIndex); 

您可以使用索引进入select选项,您可以在其中取出文本和值。

 var opt = sel.options[sel.selectedIndex]; alert(opt.text); alert(opt.value); 
 <select name="CCards" id="ccards"> <option value="0">Select Saved Payment Method:</option> <option value="1846">test xxxx1234</option> <option value="1962">test2 xxxx3456</option> </select> <script type="text/javascript"> /** Jquery **/ var selectedValue = $('#ccards').val(); //** Regular Javascript **/ var selectedValue2 = document.getElementById('ccards').value; </script> 

您也可以使用:checked <select>元素

例如,

 document.querySelector('select option:checked') document.querySelector('select option:checked').getAttribute('value') 

您甚至不必获取索引,然后通过其兄弟索引来引用该元素。