JavaScript 在函數中使用Ajax獲取的值做爲函數的返回值

解決:JavaScript 在函數中使用Ajax獲取的值做爲函數的返回值,結果沒法獲取到返回值ajax

緣由:ajax默認使用異步方式,要將異步改成同步方式json

 

案例:經過區域ID,獲取該區域下全部的學校異步

var School = new Object();
//保存區下面全部學校
School.GetAllInArea = function (areaId) {
    var returnData;
    $.ajax({
        url: "/Area/Home/Schools/" + areaId,
        type: "GET",
        dataType: "json",
        async: false,
        success: function (data) {
            returnData= data;
        }
    });
    return returnData;
}

使用async

var schools = School.GetAllInArea(@ViewBag.areaEntity.Id);
alert(schools);

這樣就能夠獲取想要的結果函數

相關文章
相關標籤/搜索