0
var getPageInhalt : function (id){
    var restmethod = "http://localhost:1212/getPageById/"+id+"/jsonp.aspx?callback=?";

    $.ajax({
        url: restmethod,
        type: "GET",
        contentType: "application/json",
        async: false,                        
        dataType: 'jsonp',
        cache: false,
        error: function(){
            return false;
        },
        success: function(data){ 
            console.log(data); --> balblal
            return data;
        }
    });
}

console.log(getPageInhalt(2));-->undefined ?????
4

1 に答える 1

2

私は同期AJAXに同意しませんが(技術的には矛盾しています..getPageInhalt ) 、ajaxコールバックからではなく、関数から値を返す必要があります..

var getPageInhalt = function (id){
    var restmethod = "http://localhost:1212/getPageById/"+id+"/jsonp.aspx?callback=?",
        resultValue;

    $.ajax({
        url: restmethod,
        type: "GET",
        contentType: "application/json",
        async: false,                        
        dataType: 'jsonp',
        cache: false,
        error: function(){
            resultValue = false;
        },
        success: function(data){ 
            console.log(data); //--> balblal
            resultValue = data;
        }
    });

    return resultValue;
}

ここにデモがあります http://jsfiddle.net/gaby/qHY7g/

于 2012-06-11T09:32:38.923 に答える