如何为jquery ajax post方法赋值变量

时间:2016-10-24 07:23:54

标签: javascript jquery

如何将单选按钮选定值传递给gender.php页面。 我是javascript的新手..让我说我在收音机标签中选择男性,我怎样才能传递价值"男性"性别.php?

<div id="gender" class="selection-gender">
<input type="hidden" name="ad_id" value="xxx">
<input id="radio" type="radio" name="gender" value="both">Both
<input id="radio" type="radio" name="gender" value="female">Female
<input id="radio" type="radio" name="gender" value="male">Male<br>
</div>
<input id="submit_gender" type="submit" name="submit_choices" value="Submit">


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

            $.ajax({
                type: 'POST',
                url: 'gender.php',
                success: function(data) {

                    $("#gender").html(data);

                }
            });
   });
});
</script>

3 个答案:

答案 0 :(得分:1)

三部分:

  1. 查找已选中的单选按钮,使用$("input[type=radio][name=gender]:checked")。那个使用带有jQuery-custom :checked伪类的CSS选择器。

  2. 通过.val()获取其价值。

  3. 通过ajax参数提供data来电

  4. 所以:

    $.ajax({
        type: 'POST',
        url: 'gender.php',
        data: {gender: $("input[type=radio][name=gender]:checked").val()}, // ***
        success: function(data) {
    
            $("#gender").html(data);
    
        }
    });
    

    通过传递data一个对象,您可以让jQuery以URI编码格式为您正确地序列化它。

    在PHP代码中,您可以通过$_POST["gender"]获得。

    附注:您在多个元素上使用了相同的id。你不能用HTML做到这一点,它是无效的。你也不需要;单选按钮不必具有id s。

答案 1 :(得分:0)

您可以选择选中的收音机:

var selectedRadio = $("#gender").find("input[type=radio][name=gender]:checked").val()

然后,您可以使用数据参数发布数据,如下所示:

$.ajax({
    type: 'POST',
    url: 'gender.php',
    data: selectedRadio,
    success: function(data) {

        $("#gender").html(data);

    }
});

<强>更新

虽然为您的值设置一个名称,以便稍后在您的php文件中轻松获取它是好的。

你可以这样做:

$.ajax({
    type: 'POST',
    url: 'gender.php',
    data: { myValue: selectedRadio },
    success: function(data) {

        $("#gender").html(data);

    }
});

然后,您可以使用PHP代码中的post方法获取php文件中的数据:

$_POST["myValue"]

答案 2 :(得分:-1)

试试这个

$(document).ready(function(){
    $("#submit_gender").click(function(){
    var gender = $("input[name='gender']:checked").val();
     $.ajax({
            url: "gender.php",
            type: 'POST',
            data: {gender : gender },
            success: function(data) {
                $("#gender").html(data);
            }
         });
    });
});

$(document).ready(function(){ $("#submit_gender").click(function(){ var gender = $("input[name='gender']:checked").val(); $.ajax({ url: "gender.php", type: 'POST', data: {gender : gender }, success: function(data) { $("#gender").html(data); } }); }); });