Отключить кнопку обновления

#java #javascript #jsp

#java #javascript #jsp

Вопрос:

В настоящее время у меня есть требование отключить функциональность кнопки обновления во всех браузерах. Я могу сделать это для кнопки F5, но для кнопки обновления у меня не было никакой идеи. даже я погуглил это. У меня не было никаких идей. Пожалуйста, помогите мне в этом. Это требование необходимо в целях безопасности, потому что в моем приложении в некоторых сценариях выполняются действия по изменению URL.

Для f5 я пытаюсь вот так,

 function checkKeyCode() 
{ 
switch (event.keyCode) 
{ 

case 116 : // 'F5' 
event.returnValue = false; 
event.keyCode = 0; 
window.status = "We have disabled F5"; 
break; 
}

}
  

Комментарии:

1. Вы не сможете отключить кнопку обновления. Найдите другой способ достижения вашей бизнес-цели.

2. Одно из золотых правил разработки веб-приложения заключается в том, что вы не меняете способ навигации в веб-браузере.

3. Какое это имеет отношение к программированию на Java?

Ответ №1:

Короткий ответ заключается в том, что вы не можете этого сделать без какого-то странного плагина, который вы хотите, чтобы пользователь установил.

Браузер — это среда выполнения, которая считывает ваши HTML-файлы и выполняет то, что в них содержится. Итак, насколько вы можете перехватывать нажатия клавиш в HTML-документе, вы все равно не сможете остановить обновление браузера, поскольку это действие на стороне клиента, которое вы не можете контролировать.

Самое близкое к решению, которое вы получите, — это использовать cookies или какой-нибудь Javascript для перехвата факта обновления страницы, после чего вы сможете справиться с этим в своем веб-приложении.

Комментарии:

1. Спасибо, друзья.. Я воспользуюсь этим .. у меня есть другой способ для этого .. При изменении URL я проверяю некоторое условие, и если его там нет, это означает, что я показываю страницу сбоя сеанса.. В любом случае, спасибо за ваш ценный совет, друзья…..

2. Привет, Нагараджан, нет проблем. Stack Overflow предназначен для обмена знаниями. Я рад, что у вас было решение.