Ajax: как я могу использовать обратный вызов для возврата переменной ответа?

У меня есть следующая строка:

var userEmail = getUserInfo("Email");


function getUserInfo(query) {

var userEmail = "error";

$.ajax({  

    url: "https://mysite/_api/SP.UserProfiles.PeopleManager/GetMyProperties/" + query,  
    headers: { Accept: "application/json;odata=verbose" },
    success: function (data) {  
        try {  

            userEmail = data.d["Email"]
            console.log("Email Ajax: " + userEmail);


        } catch (err2) {  
            alert(JSON.stringify(err2));  
        }  
    },  
    error: function (jQxhr, errorCode, errorThrown) {  
        alert(errorThrown);  
    }  
});

console.log("Email end AJAX: " + userEmail);
return userEmail;
}

поэтому, когда я console.log в середине вызова AJAX, он правильно получает мою электронную почту. Но когда я возвращаю его в конце, console.log говорит, что userEmail по-прежнему "ошибка";

Таким образом, он возвращает "error", и userEmail заканчивается строкой "error".

Могли бы показать мне, как я могу использовать обратный вызов, чтобы решить эту проблему?

Спасибо вам большое!

0 ответов

Другие вопросы по тегам