2010-07-20 6 views
1

J'utilise asp.net 2.0 avec C#. Je veux qu'une fenêtre apparaisse lorsque l'utilisateur essaie de fermer le navigateur et que l'utilisateur clique sur "non" [c.-à-d. il ne veut pas que le navigateur soit fermé] alors il empêche le navigateur de se fermer. S'il vous plaît aider. MerciEmpêcher la fermeture du navigateur dans asp.net

+1

Ce n'est pas possible, et ce serait une chose horriblement grossière à faire si c'était le cas. – Pointy

+1

Quelques points 1/c'est possible (Voir les autres réponses ci-dessous) 2/Il n'est pas forcément plus grossier que de permettre aux utilisateurs de perdre des données sans avertissement. 3/Ce n'est pas forcément une question d'asp.net, car elle concerne entièrement le navigateur et peut s'appliquer aussi facilement à une application écrite en Java, PHP etc. – belugabob

Répondre

2

le code qu'ils utilisent est

window.onbeforeunload=function() { 
    if (somereasonorother) return "You did not save your stuff" 
} 
+0

PS: ancienne mais peut-être encore utile pour vous: http://www.4guysfromrolla.com/articles/101304-1.aspx – mplungjan

+0

Wow! :-) merci beaucoup. – Rahul

+0

Vous êtes les bienvenus. S'il vous plaît noter les autres commentaires sont valables aussi - si l'utilisateur veut quitter, ils devraient être autorisés à - et si votre application est construite sur le besoin de savoir quand ils quittent ou ferment le navigateur, vous pourriez être en difficulté :) – mplungjan

1

Pointy, c'est tout à fait possible, et il est fait par de nombreuses pages Web pour des raisons parfaitement raisonnables.

Essayez quelque chose comme ceci:

function areYouSure() { 
    return "Are you sure you want to leave this page?"; 
} 
window.onbeforeunload = areYouSure; 
0

Vous pouvez essayer de vous joindre à l'événement onbeforeunload:

<body onbeforeunload="ConfirmClose();"> 

Mais je dois mentionner que cela ne fonctionnera pas sur tous les navigateurs. Les seuls qui ont provoqué quelque chose après avoir fermé une fenêtre étaient Chrome, Firefox et Internet Explorer; Opera a ignoré le code dans la méthode JavaScript. Ceci est principalement dû au fait que certains navigateurs déclenchent l'événement onbeforeunload uniquement lorsque vous essayez de quitter la page en cours en visitant une autre, et non lorsque vous fermez la fenêtre/l'onglet en cours.

+0

FF? https://developer.mozilla.org/en/DOM/window.onbeforeunload – mplungjan

+0

Il semble que j'ai essayé celui-ci sur une ancienne version de Firefox; cela fonctionne avec la version actuelle de Firefox. J'ai maintenant mis à jour ma réponse; merci pour l'indice –

Questions connexes