1

这是我的 Ajax 调用:

 $.ajax({
            type: "POST",
            url: "ProductDetail.aspx/AddCart",
            data: '{productId:' + 4 + ',productTypeId:' + 0 + ',quantity:' + 1 + '}',
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function () {
                alert('successful');
                refreshCart();
            },
            complete: function () {
                alert('Completed');
                refreshCart();
            }
        });

它给出警报('已完成'),然后转到 webmethod 函数,但在我的服务器端代码完成后我需要它。你有什么建议吗?

4

2 回答 2

0

尝试改变这个:

complete: function () {
    alert('Completed');
    refreshCart();
}

对此:

complete: function (result,stat) {
    alert(stat);
    refreshCart();
}

看看你得到了什么。如果你得到任何形式的“错误”,你就知道你的问题是什么。

于 2012-12-10T19:35:07.143 回答
0

您的数据参数不包含有效的 json,并且您使用的是完整而不是错误。试试这个:

$.ajax({
    type: "POST",
    url: "ProductDetail.aspx/AddCart",
    data: '{"productId":' + 4 + ',"productTypeId":' + 0 + ',"quantity":' + 1 + '}',
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function() {
        alert('Successful');
        refreshCart();
    },
    error: function(jqxhr,status,message) {
        alert('Error: ' + message);
        refreshCart();
    }
});​
于 2012-12-10T19:37:03.523 回答