Component

Module

Prompt Alert When Redirect Away

Alert the user if there are unsaved changes in the form.

Directory

File Folder Link
backend.js \\SYNAS\Allan\DOCUMENTATION\Component\Prompt Alert When Redirect Away\rckuc\wolf\admin\javascript

 

Step 1

Update: backend.js

// alert when user navigate away $(document).ready(function() { let formChanged = false; let formSubmitting = false; // Detect any changes in the form $('form').on('input change', 'input:not([type="search"]), textarea, select', function (e) { // ignore DataTables search box explicitly if ($(e.target).closest('.dataTables_filter').length) return; if ($(e.target).closest('.dataTables_length').length) return; if ($(e.target).closest('.bulk_action_checkbox').length) return; formChanged = true; }); $(document).on("click", "#cropConfirm", function() { if ($("#gallery_list").length) return; formChanged = true; }) // Before submitting, disable the alert $('form').on('submit', function () { formSubmitting = true; }); window.onbeforeunload = function () { if (formChanged && !formSubmitting) { return 'You have unsaved changes. Are you sure you want to leave?'; } }; })
// alert when user navigate away
$(document).ready(function() {
    let formChanged = false;
    let formSubmitting = false;

    // Detect any changes in the form
    $('form').on('input change', 'input:not([type="search"]), textarea, select', function (e) {
        // ignore DataTables search box explicitly
        if ($(e.target).closest('.dataTables_filter').length) return;
        if ($(e.target).closest('.dataTables_length').length) return;

        if ($(e.target).closest('.bulk_action_checkbox').length) return;

        formChanged = true;
    });

    $(document).on("click", "#cropConfirm", function() {
        if ($("#gallery_list").length) return;
        formChanged = true;
    })

    // Before submitting, disable the alert
    $('form').on('submit', function () {
        formSubmitting = true;
    });

    window.onbeforeunload = function () {
        if (formChanged && !formSubmitting) {
            return 'You have unsaved changes. Are you sure you want to leave?';
        }
    };
})
Code Copied To Clipboard!