2012-09-27 47 views
12

我需要使用Javascript而不是JQuery爲選定標籤打印選定的選項ID。如何使用Javascript而不是JQuery獲得所選選項ID

假設我們有多個選擇標籤。

<select onchange="showOptions(this)" id="my_select1"> 
    <option value="a1" id="ida1">Option1</option> 
    <option value="a2" id="ida2">Option2</option> 
</select> 

<select onchange="showOptions(this)" id="my_select2"> 
    <option value="b1" id="idb1">Option1</option> 
    <option value="b2" id="idb2">Option2</option> 
</select> 

我發現了以下方式options[selectedIndex].id但我怎麼能知道哪個那些線的一個指..

有什麼建議?

我嘗試了以下,但它沒有奏效。

<select id="my_select" onchange="showOptions2(this)"> 
    <option value="o1" id="id1">Option1</option> 
    <option value="o2" id="id2">Option2</option> 
</select> 


<script type = "text/javascript"> 


function showOptions2(s){ 
var adVALUE = console.log(s[s.selectedIndex].value); // get value 
var adID = console.log(s[s.selectedIndex].id); // get id 

    alert(adID); 

} 
</script> 
+0

你怎麼知道那些線是指哪一個?什麼?你把代碼放在任何你想要找到'id'的地方。 –

回答

22
<select onchange="showOptions(this)"> 
    ... 

此功能將做的工作

function showOptions(s) { 
    console.log(s[s.selectedIndex].value); // get value 
    console.log(s[s.selectedIndex].id); // get id 
} 

需要注意的是,除非你正在使用他們的其他目的,你可以省略idselect元素

示例jsbin:http://jsbin.com/adopiz/2/edit

+0

然後我刪除了我原來的評論,並提供+1! =) –

+0

我更新了我的問題,並根據Fabrizio的回答添加了我所嘗試的內容,但沒有奏效。 – george

+0

我打開了jsbin,看起來,當我試圖提醒返回的id值時,它說再次undefined。 – george

相關問題