jQuery的$error是一个方法,用于处理在加载远程资源时出现错误的情况。
$.ajax({ url: "example.php", dataType: "json", success: function(response) { // 处理响应结果 }, error: function(xhr, status, error) { // 处理错误情况 $("body").append("An error occurred: " + error + "
"); } });
在上面的例子中,当请求example.php的响应结果不是JSON格式时,会触发$.ajax的error回调函数。在error回调中,我们可以根据xhr(XMLHttpRequest)对象的状态码和status(错误类型)来处理不同类型的错误。
值得注意的是,如果我们使用JSONP形式加载远程资源,因为JSONP无法直接获得错误信息,所以$error方法不会被调用。因此,在JSONP加载时,我们需要手动处理错误情况。
$.ajax({ url: "example.php", dataType: "jsonp", success: function(response) { // 处理响应结果 }, error: function(xhr, status, error) { // 判断是否是超时错误 if (status == "timeout") { // 处理超时错误情况 } else { // 处理其他错误情况 } }, timeout: 5000 // 设置超时时间 });
在上面的例子中,我们判断如果是超时错误,则进行特殊处理。另外,我们还设置了ajax请求的超时时间为5000ms。