0
Je voudrais créer un onbeforeunload
"Vous avez fait des modifications à la page, restez sur cette page, quittez cette page" jQuery plugin.window.onbeforeunload trucs et astuces
Le plugin devra:
- Encaisser un élément contenant.
$(".editableFieldContainer").beforeUnload()
- L'autodétection passe à
not(:hidden)
input/textarea/selects. - Invite l'utilisateur à rester sur la page si les éléments de l'élément conteneur ont changé.
- sauf si la page a été soumise via le formulaire.
- sauf si la page/l'utilisateur souhaite annuler les modifications, par exemple, un bouton/une touche "Annuler" a été enfoncé.
Quelque chose comme ça (mais pas tout à fait, il manque quelques fonctionnalités):
(function(){
var changed = false;
$.beforeUnloadCanceled = false;
$.fn.beforeUnload = function(){
$.beforeUnloadCanceled = true;
return $(this).delegate("input,select,textarea", "change", function(){
changed = true;
});
});
window.onbeforeunload = function(){
if(changed && !beforeUnloadCanceled){return "You have made edits to the page.";}
};
}());
Est-il déjà un plugin décent qui fait cela?
ressemble qui pourrait le faire avec un peu de travail ... et le code des odeurs d'œufs pourris. Mais c'est un début. Merci! –
Je viens de faire une version plus récente. Cela semble mieux que l'ancien .. http://wt-plugins.googlecode.com/files/jquery.wtFormDirty-2.js – code90
Vérifiez votre chemin de code de liste de sélection. c'est un peu cassé. –