如果“找不到网页”,请重定向到其他页面?

时间:2014-02-03 04:21:29

标签: javascript html redirect web alert

是否有办法检查连接是否不可用,并在“网页不可用”浏览器消息出现之前显示警告(或任何内容),或者如果“找不到网页”,则将重定向添加到另一个页面?

2 个答案:

答案 0 :(得分:4)

您可以使用AJAX拨打电话并查看返回状态。然后根据状态代码(例如200,404),您可以决定要执行的操作。如果使用jQuery,可以使用jQuery.ajax()方法更轻松地完成此操作。

使用jQuery

$.ajax({
 statusCode: {
  404: function() {
    alert( "page not found" );
  }
 }
});

Pure JS:

function checkUrl(url) {
    var request = false;
    if (window.XMLHttpRequest) {
            request = new XMLHttpRequest;
    } else if (window.ActiveXObject) {
            request = new ActiveXObject("Microsoft.XMLHttp");
    }

    if (request) {
            request.open("GET", url);
            if (request.status == 200) { return true; }
    }

    return false;

}

资源:

使用纯js, https://www.igotitworking.com/problem/view/69/

答案 1 :(得分:1)

你必须在页面加载之前检查,所以你应该这样做......

$.ajax({
    type: 'HEAD',
    url: 'http://domainname.com/pagename.php',
    success: function() {
        // no 404 error
    },
    error: function() {
        // error in HEAD (404 etc)
    }
});