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();
            }
        });

alert('Completed') が表示されてから webmethod 関数に移動しますが、サーバー側のコードが完了した後に必要になります。何か提案はありますか?

4

2 に答える 2

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 に答える
0

これを変更してみてください:

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

これに:

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

そして、あなたが得るものを見てください。何らかの形で「エラー」が発生した場合、問題が何であるかがわかります。

于 2012-12-10T19:35:07.143 に答える