Ajax帖子失败或其他

时间:2014-03-03 07:28:21

标签: jquery ajax post

我试图在AJAX调用后得到一个get post值。首先,我将向您展示我的AJAX代码:

$('#color').change(function(){

    var color = $('#color').find(':selected').text();
    var id = {$product_details.id};

    //alert({$product_details.id});
    //alert(color+id);

    var url = 'http://myurl';

    $.ajax({

        url: url,
        type: 'post',
        data: {'color='+color+'&id='+id},
        success: function(msg){
            alert(msg);
        }
    });

});

我已经测试过我发布到了正确的网址(不是上面的网址)。我已通过警报测试了变量。这是我的PHP文件:

echo $_POST['color'];

if(isset( $_POST['color'] )){
    echo 'hi';
    //get_unit();
}

但我无法回应$ _POST ['color']。可能是什么问题?

4 个答案:

答案 0 :(得分:2)

尝试改变:

data: {'color='+color+'&id='+id},

为:

data: {'color':color, 'id':id}

因为您使用了POST方法。

答案 1 :(得分:1)

在您在查询字符串中传递帖子数据时不需要{},当您在对象中发送数据时将使用{},请尝试这种方式

data: 'color='+color+'&id='+id

// OR

 data : {"color" : color, 'id' : id}

//

<script>
    $('#color').change(function(){

        var color = $('#color').find(':selected').text();
        var id = {$product_details.id};

        //alert({$product_details.id});
        //alert(color+id);

        var url = 'http://myurl';

        $.ajax({

            url: url,
            type: 'post',
            data: 'color='+color+'&id='+id,
            // OR
            // data : {"color" : color, 'id' : id}
            success: function(msg){
                alert(msg);
            }
        });

    });
</script>

答案 2 :(得分:1)

          $.ajax({
            url:Url,
            dataType: 'json',
            contentType: "application/json",
            type: "POST",
            data: JSON.stringify({ 'color': color1 ,'Id':id1  }),
            success: function (msg) {
             alert(msg);
                }

尝试使用此格式.color1和id1是您将数据存储在其中的局部变量。

答案 3 :(得分:1)

您可以尝试两项更改:

改变这个:

var id = {$product_details.id};

到此:

var id = $product_details.id;

因为您的对象语法错误,应该使用{key:value}对,或者您应该按上述方式进行更改。

你应该这样发布你的数据:

data: {'color':color, 'id':id},