有没有人知道如何通过JavaScript或jQuery阻止用户在页面上按Shift + F5或F5(刷新页面)?
原因是在用户点击“提交”后,停止页面将相同的变量重新提交到服务器端。按钮然后再次按下F5。
答案 0 :(得分:3)
答案不是停止页面刷新,而是为了使刷新不再发布数据:通过使用服务器脚本issue a redirect after processing the form来完成此操作。然后浏览器将获取指定的URL(它甚至可能是相同的URL),因此刷新不再发出POST,而是发出GET。
答案 1 :(得分:0)
EDITED ..遗憾地说,但没有比这更好的真正解决方案。
<script type="text/javascript">
window.onbeforeunload = function(event)
{
event = event || window.event;
// For IE and Firefox (older versions)
if (event) {
event.returnValue = 'Are you sure you want to do this?';
}
// For Safari
return 'Are you sure you want to do this?';
}
</script>
---只想添加以下内容:
嘿,我一直在玩我上面发布的代码..我无法注意到它实际上仍然令人耳目一新..唯一可能的解决方案是提升弹出对话框,从用户确认如果他们真的想离开/刷新页面。我正在更新我的代码以反映我刚才所说的内容。