如何在jQuery中获取选择框选项值

时间:2012-09-19 06:27:20

标签: jquery html-select

如果我有这样的代码,如何在jQuery中获取选项选择框的值,

<select id='media' name='media'>
    <option value='1'>media1</option>
    <option value='2'>media2</option>
    <option value='3'>media3</option>
</select>

当我为变更事件编码时,

$(document).ready(function()
{
    $("#media").change(function()
    {
        var id=$(this).val();
        var dataString = 'id='+ id;
        alert(id); return false;
    });
});

它为我media1media2media3而不是1, 2, 3

如何获得值1,2,3?

8 个答案:

答案 0 :(得分:31)

$("#id option:selected").val();

此处id是选择框的ID。我相信它会100%有效。

如果您想要选择的文字,请使用以下文字:

$("#id option:selected").text();

答案 1 :(得分:8)

$('#media').change(function(){
alert($(this).val());
});

这应该按你想要的方式工作。

答案 2 :(得分:3)

试试这个,

jQuery(document).ready(function() {

    jQuery('#media').change(function(e) {

        var id = $(this,':selected').val();
        alert(id);

    });

});

答案 3 :(得分:2)

确保使用最新的jquery,因为它工作正常

http://jsfiddle.net/Hayhv/

检查它是否给出了选项

的值

答案 4 :(得分:2)

我这样做了,

<select id='coprede' name='cop_rede'>
<option value='1'>Cop Rio de Janeiro</option>
    <option value='2'>Cop Nordeste</option>
    <option value='3'>Cop Vitoria</option>
    <option value='4'>Cluster Norte</option>
    <option value='5'>Cluster Centro Oeste</option>
</select>
脚本中的

$(function(){

$('#coprede').change(function(){
    alert($('#coprede :selected').val());
    });
});

答案 5 :(得分:1)

使用此代码:

$('#media').change(function(){
    alert($('#media :selected').val());// or $('#media').val();        
});​

答案 6 :(得分:1)

使用class而不是像这样的id ..

<select class='media' name='media'>
    <option value='1'>media1</option>
    <option value='2'>media2</option>
    <option value='3'>media3</option>
</select>

$(document).ready(function(){
    $(".media").live("change",function(){
        var id = $(this).val();
        var dataString = 'id='+ id;
        alert(id); return false;
    }); 
}); 

答案 7 :(得分:0)

我已经测试了你的代码,它的工作对我来说还可以确保id #media从其他控件重复。因为它的配置和获取值从上次找到html控件