簡體   English   中英

如果“找不到網頁”,重定向到其他頁面?

[英]Redirect to a different page if “webpage not found”?

有沒有辦法檢查連接是否不可用,並在出現“網頁不可用”瀏覽器消息之前顯示警報(或任何內容),或者如果“找不到網頁”,則將重定向添加到另一個頁面?

您可以撥打電話,並使用AJAX檢查返回狀態。 然后,根據狀態代碼(例如200,404),您可以決定要執行的操作。 如果使用jQuery,則可以使用jQuery.ajax()方法更輕松地完成此操作。

使用jQuery

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

純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/

您必須在明顯地加載頁面之前進行檢查,因此您應該可以執行以下操作...

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM