2013-10-01 94 views
0

獲取選定值的ID我有一個下拉列表,從DB如下jQuery來從下拉

$.get('/getJobs', function (jobs) { 
     seljobs = jobs; 
     var i = 0; 
     jobs.forEach(function (n) { 
          alert("job id----"+n.id)// 32,67,45 
          alert("job names----"+n.names)//test1,test2,test3 

      html += '<option value="' + i + '">' + n.names + '</option>'; 
      i++; 
     }); 
     $('#jobSel').html(html); 
    }); 

中取值我得選擇下拉值的id ..

IC在我的下拉列表中,我有名字值test1,test2,test3 ans assosiated id's 32,67,45,

當選擇test1時,我必須得到id 32,所以答案如此。它是如何可能

<tr> 
         <td width="200px">Jobs</td> 
         <td> 
          <select id="jobSel" class="longcombo"></select> 
         </td> 
        </tr> 
+1

看起來像是一個覆蓋在http://stackoverflow.com/questions/2888446/get-the-selected-option-id-with- jquery –

+1

您是否試圖檢索所選選項的id或值。既然你沒有在html代碼中設置id。你只是提醒id值。 – Viji

回答

16

嘗試在變化情況下,本

$("#jodSel").on('change',function(){ 
    var getValue=$(this).val(); 
    alert(getValue); 
    }); 

注:dropdownlist如果你想設置id,從你的數據庫的文本關係,然後在選項標記中將id設置爲值,而不是通過添加額外的012裏面的選項屬性它不是標準paractise雖然我都在我的答案,但我更喜歡例如1

HTML標記

Example 1: 
    <select id="example1"> 
     <option value="1">one</option> 
     <option value="2">two</option> 
     <option value="3">three</option> 
     <option value="4">four</option> 
    </select> 
Example 2 : 
    <select id="example2"> 
     <option id="1">one</option> 
     <option id="2">two</option> 
     <option id="3">three</option> 
     <option id="4">four</option> 
    </select> 

jQuery的那樣:

$("#example1").on('change', function() { 
    alert($(this).val()); 
}); 

$("#example2").on('change', function() { 
    alert($(this).find('option:selected').attr('id')); 
}); 

觀看演示: For example 1, example 2

博客文章:Get and Set dropdown list selected value with Jquery

Learn jQuery: Simple and easy jQuery tutorials blog

+1

他想要的是id,而不是價值。 – Dementic

+0

如果錯誤的操作說他有項目作爲test1,test2,test3和值爲32,33,34,所以他想獲取與test1,test2分配的ID ... –

+0

編輯的問題,是訪問frm我的電話,所以cnt做適當的格式化。 wtw的Btw id?下拉列表或列表項? .val()會給出listitem選擇的值,也就是說id已經綁定了相應的項目test1-32,test2-33等等 –

5

嘗試改變事件和選擇的選擇

$('#jobSel').change(function(){ 
    var optId = $(this).find('option:selected').attr('id') 
}) 
1

如果您想獲得ID,請更新您的代碼像

html += '<option id = "' + n.id + "' value="' + i + '">' + n.names + '</option>'; 

要檢索的ID,

$('option:selected').attr("id") 

檢索價值

$('option:selected').val() 
在Javascript

var e = document.getElementById("jobSel"); 
var job = e.options[e.selectedIndex].value; 
+1

OP尋找身份證,而不是價值。 – Dementic

+1

爲此,他沒有在代碼中設置id。 – Viji

1

首先設置一個自定義屬性到您的選項,例如​​3210(你可以設置一個HTML元素的非標準化的屬性,它是允許的):

'<option nameid= "' + n.id + "' value="' + i + '">' + n.names + '</option>' 

那麼你可以很容易地使用jquery得到屬性值.attr()

$('option:selected').attr("nameid") 

例如:

<select id="jobSel" class="longcombo" onchange="GetNameId"> 
    <option nameid="32" value="1">test1</option> 
    <option nameid="67" value="1">test2</option> 
    <option nameid="45" value="1">test3</option>  
    </select>  

Jquery的:

function GetNameId(){ 
    alert($('#jobSel option:selected').attr("nameid")); 
}