Как мне остановить загрузку страницы (навигацию) в JS?

Кто-нибудь знает, как остановить перезагрузку или удаление страницы?

jQuery(function($) {

    /* global on unload notification */
    warning = true;

    if(warning) {
        $(window).bind("unload", function() { 
            if (confirm("Do you want to leave this page") == true) {
                //they pressed OK
                alert('ok');
            } else {
                // they pressed Cancel
                alert('cancel');
                return false;
            }
        });
    }
});

Сейчас я работаю над сайтом электронной коммерции, на странице, где отображаются ваши будущие заказы, есть возможность изменять количество товаров, заказанных с помощью кнопок +/-. Изменение количества таким образом фактически не меняет сам заказ, они должны нажать «Подтвердить» и, следовательно, совершить положительное действие для изменения заказа.

Однако, если они изменили количества и ушли со страницы, я хотел бы предупредить их, что они делают это в случае аварии, поскольку измененные количества будут потеряны, если они уйдут или обновят страницу.

В приведенном выше коде я использую глобальную переменную, которая по умолчанию будет иметь значение «ложь» (ее значение только для тестирования), при изменении количества я обновлю эту переменную до значения «истина», а когда они подтвердят изменения, я установлю ее значение «ложь». ,

Если предупреждение верно и страница выгружена, я предлагаю им окно подтверждения, если они говорят «нет», они хотели бы остаться на этой странице, мне нужно, чтобы она не выгружалась. return false не работает, он по-прежнему позволяет пользователю перемещаться (предупреждения есть только для отладки)

Есть идеи?

Ответы на вопрос(6)

Ваш ответ на вопрос