Я только начинаю отучать себя от ASP.NET UpdatePanels. Я использую jQuery и jTemplates, чтобы связать результаты веб-сервиса с сеткой, и все работает отлично.
Вот в чем дело: я пытаюсь показать вращающийся GIF во время обновления таблицы (как UpdateProgress в ASP.NET) У меня все работает, за исключением того, что счетчик заморожен. Чтобы увидеть, что происходит, я попытался отодвинуть счетчик от div прогресса обновления и вывести его на страницу, где я могу видеть его все время. Он вращается и вращается до тех пор, пока не начнется обновление, и останется замороженным до завершения обновления, а затем снова начнет вращаться. Не совсем то, что вы хотите от спиннера «пожалуйста, подождите»!
Это в IE7 - еще не было возможности протестировать в других браузерах. Какие-нибудь мысли? Является ли вызов ajax или привязка данных на стороне клиента настолько ресурсоемким, что браузер не может использовать анимированные GIF-файлы?
Обновление
Вот код, который обновляет сетку. Не уверен, является ли это синхронным или асинхронным.
updateConcessions = function(e) {
$.ajax({
type: "POST",
url: "Concessions.aspx/GetConcessions",
data: "{'Countries':'ga'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
applyTemplate(msg);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
}
});
}
applyTemplate = function(msg) {
$('div#TemplateTarget').setTemplate($('div#TemplateSource').html());
$('div#TemplateTarget').processTemplate(msg);
}
Обновление 2
Я только что проверил документацию jQuery , и метод $.ajax()
по умолчанию является асинхронным. Просто для удовольствия я добавил это
$.ajax({
async: true,
...
и это не имело никакого значения.