繁体   English   中英

Jquery从下拉列表中获取所选值的id

[英]Jquery to get the id of selected value from dropdown

我有一个下拉列表,它从数据库中获取值如下

$.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 id's 32,67,45,

在选择 test1 时,我必须获得 id 32 等等。这怎么可能

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

试试这个

在更改事件

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

注意:在dropdownlist如果你想从你的数据库中设置 id,文本关系,然后将 id 设置为选项标签中的值,而不是通过在选项中添加额外的id属性它不是标准的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>

查询:

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

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

尝试更改事件和选定的选择器

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

首先在您的选项中设置一个自定义属性,例如nameid (您可以设置 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>    

查询:

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

如果您正在尝试获取 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;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM