jQuery中load()方法还是比较方便的,可以对div等容器动态加载页面或其它html元素,通常情况我们是这样使用的:
$("#div").load(url);这种方式是没有进行任何异常处理的,如果后端没有任何异常,前端页面是可以正常加载的,
但后端发生异常时,前端需要加载的元素就会出现个空白,且没有任何提示信息,这样的界面很不友好的,
下面看一下load方法的参数
定义和用法
load() 方法通过 AJAX 请求从服务器加载数据,并把返回的数据放置到指定的元素中。
注释:还存在一个名为load 的 jQuery 事件 方法。调用哪个,取决于参数。
语法
load(url,data,function(response,status,xhr))
参数 | 描述 |
---|---|
url | 规定要将请求发送到哪个 URL。 |
data | 可选。规定连同请求发送到服务器的数据。 |
function(response,status,xhr) | 可选。规定当请求完成时运行的函数。 额外的参数:
|
因此,可以根据回调方法中的参数xhr.status状态判断请求状态:200,404,或500等,在回调方法中加载对应的异常页面或给出对应提示信息,
改进后的代码
load(url,function(response,status,xhr){
if(xhr.status == 404){
$(this).load("404.html");
//或者 $(this).html(errorText);
}
if(xhr.status == 500){
$(this).load("500.html");
//或者 $(this).html(errorText);
}
......
});
希望对初学者有所帮助