Jquery选项值无法在警告框中显示

时间:2013-05-09 07:17:59

标签: jquery options

请转到http://jsfiddle.net/RZy4E/,为什么我在选择时无法在警告框中看到选项值?

<script type="text/javascript">
$(document).ready(function(){

$("#filterCountry").change(function(){
    var parameters = $('#form_search').serialize();
    alert(parameters);
    /*$.ajax({
        url: 'ajax_profile.php',
        data: parameters,
        type: 'POST',
        success: function(data){
            $('#load_vids').html(data);
        }
    });*/
});

});
</script>

</head>

<body>

<form name="form_search" action="" method="post" enctype="multipart/form-data">
<div style="padding-bottom:6px;">
    Country:<br />
    <select id="filterCountry" name="filterCountry" style="background:#e5e5e5;border:solid 0 #bbb;font-size:11px;width:135px;height:18px;padding:2px;">
        <option value="all">All</option>
        <option value="FR">FRANCE</option>
        <option value="MY">MALAYSIA</option>
        <option value="NP">NEPAL</option>
    </select>
</div>
</form>

</body>

7 个答案:

答案 0 :(得分:4)

您需要使用:

$('[name="form_search"]').serialize();

因为您提供的表单name="form_search"不是id="form_search"

如果您想直接获取表单的价值,可以执行以下操作:

$('[name="form_search"]').find(':selected').val();

<强> Updated Fiddle

答案 1 :(得分:3)

您必须将id="form_search"属性添加到<form>

答案 2 :(得分:2)

试试这个:

var selected = $(this).find('option:selected').val();
alert(selected);

DEMO HERE

答案 3 :(得分:0)

因为您错过了将id添加到表单

<form name="form_search" id="form_search" action="" method="post" enctype="multipart/form-data" >
                    //---^^^^^^^^^^^^^^^^---here

并且您正在使用id选择器

序列化表单

答案 4 :(得分:0)

您的代码中有一些错误。所以使用下面的代码来获取数据。

var parameters = $('form[name=form_search]').serialize();
alert(JSON.stringify(parameters));

答案 5 :(得分:0)

请尝试

var parameters = $("option:selected", this).val();
alert(parameters);

更新的小提琴链接为http://jsfiddle.net/RZy4E/2/

答案 6 :(得分:0)

为论坛提供id

<form name="form_search" action="" method="post" id="form_search" enctype="multipart/form-data">

或使用

等表单名称进行检索
var parameters = $('form[name="form_search"]').serialize();
alert(parameters);