Показать сообщение отдельно
  #1 (permalink)  
Старый 12.08.2010, 10:32
Интересующийся
Отправить личное сообщение для DonLino Посмотреть профиль Найти все сообщения от DonLino
 
Регистрация: 13.07.2010
Сообщений: 15

Видимость еременных. Объявление и присваивание.
Есть обращение к веб-сервису, тот в свою очередь возвращает значение. Так вот, есть функция, которая выполняется после успешного обращения к сервису и принимает значение msg.d. В этой функции делаю a = msg.d, переменния а объявленна в начале скрипта как var a;.
Когда вызываю внутри данной функции alert(a); выводится значение переменной а, если же за пределами функции, то undefined... Как присвоить значение переменной msg.d переменной а, что бы значение в переменной а было доступно в теле скрипта, а не в пределах одной функции??
собственно код:
var a;
var b;
// Обращение к веб-сервису
function ExecuteService(params, url, callbackSuccess) {  
    $.ajax({
        type: "POST",
        url: url,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        data: params,
        success: callbackSuccess,
        error: function callbackError(XMLHttpRequest, textStatus, errorThrown) {
            alert('Error!! XMLHttpRequest- ' + XMLHttpRequest + "; textStatus- " + textStatus + "; errorThrown- " + errorThrown);
        }
    });
}
// получаем общее колличество записей
function NumbOfRecs(msg) {  
    a = msg.d;
}

$(document).ready(function () {
    // Обращениея к веб-сервису
    ExecuteService("{}", "ListViewWebService.asmx/GetNumOfRecords", NumbOfRecs);
    b = a;
    alert(b);
});
Ответить с цитированием