Jquery或Ajax(如果加载失败)


Jquery or Ajax if load fails

当您使用Jquery或Ajax调用页面或脚本时,该页面或脚本加载到div中,或示例

$.post('pagename.php', $(#cpay'.$id.'").serialize(), function(data) { $('#conSupp".$id."').html(data);

如果页面加载失败,有没有办法在div中显示错误消息

非常感谢

如果您使用的是jquery 1.5或更高版本,post将返回一个jqXhr对象。如果是这样的话,你可以这样做:

$.post('pagename.php', data, function(data) {
    //success, do stuff with the data object
}).fail(function(jqXhr, ajaxOptions, thrownError){
    //something went wrong
    alert('Error: ' + thrownError);
});

是,通过对$.post():调用返回的jqXhr对象调用.fail()函数,绑定错误处理程序

$.post(url, data, function(data) {
    ...
}).fail(function(jqXhr, textStatus, errorThrown) {
    // an error occurred - do something here
});

我更喜欢做:

$.ajax({
    type: 'POST',
    url : 'pagename.php',
    data: $(#cpay'.$id.').serialize()
}).done(function(data {
    $('#conSupp".$id."').html(data);
}).fail(function() {
    $('#conSupp".$id."').html('An error occured');
});

它稍微长了一点,但我发现读取对我需要的任何内容的更改都要容易得多,而且这正是$.post在内部所做的,所以为我节省了一个函数调用?