--- /dev/null
+<script>
+ var formHasChanged = false;
+ var submitted = false;
+ var form_to_watch = document.getElementById('form_to_watch');
+ form_to_watch.addEventListener('input', function() {
+ formHasChanged = true;
+ });
+ form_to_watch.addEventListener('submit', function() {
+ submitted = true;
+ });
+ window.addEventListener('beforeunload', function(event) {
+ if (formHasChanged && !submitted) {
+ var confirmationMessage = 'You have unsaved changes. Are you sure you want to leave?';
+ event.returnValue = confirmationMessage;
+ return confirmationMessage;
+ }
+ });
+</script>
+