2012-04-05 7 views
8

Wenn keine Internetverbindung besteht, wird eine Fehlermeldung mit dem Dialogfeld "Keine Internetverbindung" angezeigt, ohne java zu verwenden. Ich muss das Skript jquery oder ajax verwenden Warnung ...Dialogfeld, wenn keine Internetverbindung mit jquery oder ajax besteht

+1

Mögliche doppelte http://stackoverflow.com/questions/189430/javascript-how-to-detect-that-the-internet-connection-is-offline –

+0

ich brauche Dialogfeld zu zeigen, in Meine mobile App, wenn es keine Internetverbindung gibt. Stört nicht über Button ... Wenn ich offline bin – Raj

Antwort

13

In Ihrem JQuery Ajax-Aufruf können Sie Folgendes verwenden und dann den Statuscode des Fehlers abfragen. Beachten Sie, dass der Statuscode 0 sein wird, wenn sie offline sind, aber Sie können auch andere Statuscodes abfragen (siehe unten für eine Liste):

$.ajax({ 
    //your ajax options 
    error: function(statusCode, errorThrown) { 
     if (statusCode.status == 0) { 
      alert("you're offline"); 
     } 
    } 
}); 

Hier ist eine Liste von Statuscodes, die Sie auch als Referenz fangen können: http://support.google.com/webmasters/bin/answer.py?hl=en&answer=40132

+0

was ist x, e Wo soll ich mich bewerben? – Raj

+0

x ist der HTTP-Statuscode des Fehlers und e ist das Fehlerobjekt, sorry, ich werde die Namen in meinem Code aktualisieren. Sie sollten den Fehler in Ihren vorhandenen jQuery Ajax-Aufruf einfügen. Wenn Sie Ihren tatsächlichen Code veröffentlichen, kann ich Ihnen genau zeigen, wo es hin muss. Sehen Sie sich die Fehlerfunktion hier an: http://api.jquery.com/jQuery.ajax/ – mattytommo

+2

Der Status kann aus mehreren anderen Gründen als einem Netzwerkfehler 0 sein. –

4
function isOnline() { 
    var online = navigator.onLine; // Detecting the internet connection 
    if(online) { 
     // do your stuff 
    } else { 
     alert('You\'re Offline now...'); 
    } 
} 
+0

dieser Code funktioniert nicht im mobilen Webbrowser – Raj