0
有沒有什麼方法可以檢測窗口是否被用戶刷新,或者是否是window.location.reload(); js命令已執行並刷新頁面?檢測JS是刷新頁面還是用戶確實
因爲如果用戶刷新了頁面/導航,並且想要保留此過濾器會話變量(如果我重新加載了javascript),我想取消設置Filter會話變量。
我試圖通過與$_SERVER['HTTP_REFERER']
工作當我做window.location.reload(),$ _ SERVER [ 'HTTP_REFERER']變爲全電流通路的鏈接,所以我試圖做的事:
if(!isset($_SERVER['HTTP_REFERER']) || $_SERVER['HTTP_REFERER'] != url::base(true).Request::current()->uri())
{
$session = Session::instance();
$session->delete('deal_filter');
}
但這不是有效的,只有在有時。
如果我不能通過這種方式檢測到,有沒有其他的方法來完成這個?
當Javascript刷新它時,是否可以使用POST操作向頁面提交一個值,然後檢查該值以確定它是哪種刷新? – 2012-08-12 03:10:14
@PeteSchlette是的,當然,好主意!告訴我怎麼做 - 唯一需要的是它像簡單的window.location.reload()那樣刷新頁面。 – Karem 2012-08-12 03:14:35