Нет эквивалента DoEvents, но вы можете поместить код, который зависит от ваших данных JSON, в функцию и вызвать ее из обратного вызова AJAX. Вы также можете использовать метод $ .getJSON, чтобы вам не приходилось самостоятельно оценивать JSON.
$(document).ready(function() {
$.getJSON("/Handlers/SearchData.ashx",
function(data) {
json = data;
stuffToDoAfterIHaveData();
});
//do some other stuff
});
//use json data
function stuffToDoAfterIHaveData() {
alert(json == null);
}
В качестве альтернативы, jQuery предлагает способ сделать синхронные запросы AJAX (то есть они останавливают выполнение кода до тех пор, пока ответ не возвращается). Вы можете использовать $.ajaxSetup({ async: false });
или напрямую вызывать метод $.ajax
и передать async:false
в объекте параметров.