2013-06-17 12 views
6

In den meisten Seiten, wenn Sie eine Aktion machen, (wie Bearbeiten, Erstellen), und wenn ich versuche, zu beenden, es zeigt mir meist, wenn ich wirklich beenden möchte. Der Dialog gibt mir zwei Optionen: verlassen oder abbrechen und fortfahren. Wie erreichst du das in JavaScript? Muss ich ein Meta-Element verwenden? Und bitte erwähnen Sie nicht beforeunload, es sei denn, es ist der wahre und einzige Weg, dies zu erreichen. Bestätigung vor dem Beenden Dialog

+0

Kontrolle: http://www.w3schools.com/js/tryit.asp?filename=tryjs_confirm – rags

+0

@rags auf Nicht-Boxen allein bestätigen, Boxen bestätigen, wenn Sie die Seite zu verlassen versuchen. – slice

Antwort

15

Warum nicht onbeforeunload? Es ist der eingebaute Weg, um dies zu tun, und ich sehe kein Problem damit.

function myConfirmation() { 
    return 'Are you sure you want to quit?'; 
} 

window.onbeforeunload = myConfirmation; 
+1

Dies erzeugt den Standarddialog des Browsers zum Verlassen oder Bleiben. Wenn Sie etwas Zarteres wollen, können Sie mit dieser Funktion beispielsweise einen jQuery- oder Fancybox-Dialog aufrufen und 'true' oder' false' zurückgeben, je nachdem, was in diesem schickeren Dialog passiert. – casraf

+0

Vielen Dank, mein mobiler Browser hat den richtigen Dialog erstellt. – slice

+0

Bitte als akzeptiert markieren :) – casraf

-3
window.onbeforeunload = function() { 
     if(confirm('are you sure to exit?')) 
      return true; 
     else 
      return false; 
}; 
+0

@Gaurav Danke für den schönen Druck. – slice

+0

Alex, dies führt zu einem doppelten Dialog. – slice

+0

oh ja ... das ist nicht so gut;) aber meine Funktion zeigt den Text: D .... –