0

ajax/jsonp/Get リクエストを実行しています。フィドラーを使用すると、適切な応答 ( jsonpCallBack({"GetMetadataResult":{"TotalPages":"20"}}); ) を確認できますが、要求時に ajax 呼び出しは成功、エラー、完了のいずれかを実行していないことを返すだけです、または callbackFnt スクリプト。後で、関数が完了すると、ajax 成功スクリプトが実行されます。私が間違っているのかわかりません。

function getRequest( url, data )
{
    var ajaxRequest = undefined;  // The variable that makes Ajax possible

    //"Content-type": "application/json; charset=utf-8",
    var response =  $.ajax( {
        "url": url,
        "type": "GET",
        "dataType": "jsonp",
        "data": data,
        "contentType": "application/json; charset=utf-8",
        "jsonpCallback": "jsonpCallBack",
        "success": function ( r )
        {
            return r;
        },

        "complete": function ( r )
        {
            for ( var i = 0; i < r.count; i++ )
            {
                return r;
            }
        },
        "error": function ( xhr )
        {
            return false;
        }            
    } );

    return true;
}

function jsonpCallBack( r )
{
    return r;
}
4

1 に答える 1

0

あなたのコードが間違っているとは思いませんが、デザインは間違っています。あなたが知っているように、同期JSONPのようなものはありません。http://api.jquery.com/jQuery.ajax/から

「クロスドメインのリクエストとdataType: "jsonp"リクエストは同期操作をサポートしていません」

于 2013-05-30T00:39:34.317 に答える