我有一个应用程序在第一次运行时加载多个资源,这些资源存储在localStorage中。我有一个函数,检查是否所有的本地存储变量设置,以便该部分工作正常。如何检测几个AJAX请求已完成或失败?
我的工作的方法是这样的:
- 显示加载消息。
- 初始化AJAX请求。
- 启动计时器间隔以检查是否所有内容都已加载。
- 当数据加载时,初始化应用程序等。
- 如果数据未加载,则显示错误消息。
问题是#5 - 如何检测是否有错误?例如,如果出现连接问题或服务器因任何原因而发回无效数据。这里是我当前的代码 - downloadData只是进行基本的AJAX请求:
// check local storage and download if any missing
if (!checkLocalStorage())
{
$('#content').before('<div class="notice" id="downloading">Downloading data, please wait...</div>');
for (var i in db_tables)
{
if (localStorage[db_tables[i]] == null)
downloadData(db_tables[i]);
}
}
// check progress
var timer = setInterval(function() {
if (checkLocalStorage())
{
// everything is downloaded
$('#downloading').hide();
clearInterval(timer);
initApp();
}
}, 500);
问题是,服务器可能会返回200响应,但数据不正确(例如PHP/MySQL错误或其他)。 – DisgruntledGoat 2011-04-21 09:27:16