2012-09-27 30 views
12

Tôi cần in ID tùy chọn đã chọn bằng Javascript chứ không phải JQuery cho cả hai thẻ được chọn.Cách lấy ID tùy chọn đã chọn bằng Javascript không phải là JQuery

Giả sử chúng tôi có nhiều thẻ chọn.

<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> 

tôi phát hiện ra theo cách sau options[selectedIndex].id nhưng làm thế nào tôi có thể biết mà một trong những dòng đó đề cập đến ..

Bất kỳ lời đề nghị?

Tôi đã thử những điều sau đây nhưng nó không hoạt động.

<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

Làm thế nào bạn có thể biết một trong những dòng đó đề cập đến? Gì? Bạn đặt mã đó bất cứ nơi nào bạn muốn tìm 'id'. –

Trả lời

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

chức năng này sẽ làm công việc

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

Lưu ý rằng, trừ khi bạn đang sử dụng chúng cho mục đích nào khác, bạn có thể bỏ qua các id trên select yếu tố

Ví dụ jsbin: http://jsbin.com/adopiz/2/edit

+0

Sau đó, tôi xóa nhận xét ban đầu của mình và cung cấp +1! =) –

+0

Tôi đã cập nhật câu hỏi của mình và tôi đã thêm những gì tôi đã thử dựa trên câu trả lời của Fabrizio nhưng nó không hoạt động. – george

+0

Tôi đã mở jsbin và có vẻ như khi tôi đang cố gắng cảnh báo giá trị id đã trả về, nó nói không xác định lại. – george

Các vấn đề liên quan