Bonjour,
j'ai développé un outils de gestion clients en webdev.
Dans ce site, j'ai une "fiche client" qui affiche les informations d'une entreprise et tous les contacts qui lui sont associés. Ces informations peuvent être modifiées puis sauvegardées en cliquant sur un bouton "sauvegarde".
Le problème qui se pose est lorsque l'utilisateur fait une modification et qu'il quitte la page en oubliant de sauvegarder

J'aurais voulu mettre en place un traitement qui, lors de la fermeture de la page (soit par la fermeture de l'onglet/du navigateur soit par l'affichage d'une autre page du site ou carrément d'un autre site), m'affiche une boite de dialogue me proposant de sauvegarder les modifications s'il y en a eu.

J'ai mis en place un interrupteur invisible initialisé à faux que je passe à vrai si je modifie un champ. Je le repasse à faux si je clique sur le bouton "sauvegarde".

Je souhaiterai que lors de la sortie de ma page (autre page du site, autre site, fermeture du navigateur ou de l'onglet), si l'interrupteur est vrai, alors j'affiche la boite de dialogue de type OuiNon
Si je clique sur "Oui", j’exécute le code du bouton "sauvegarde" puis on continue ce qui devait être fait (fermeture ou affichage d'une nouvelle page), si je clique sur "non", on ferme l'onglet / navigateur ou on affiche la nouvelle page.


J'ai le code de tout ça mais je ne sais pas où le situer. J'ai essayé de le mettre dans le traitement Fermeture de Ma_Page (serveur) mais ce code ne s'exécute que lorsque je reviens sur cette page; j'ai également essayé de le mettre dans le traitement Déchargement de Ma_Page (navigateur) en passant par un exécuteTraitement d'un bouton dans lequel je mets mon code mais je ne rentre jamais dans le code du bouton.

Où dois-je mettre mon code pour qu'il s'exécute lors de la fermeture de la page et qu'il bloque sa fermeture jusqu'à ce que l'on interagisse avec la boite de dialogue?

je vous remercie