2010-03-15 100 views
0

我有一個4頁的小應用程序供我的客戶使用。他們填寫信息。如果他們讓它坐得太久,會話超時,我想彈出一個JavaScript警告,說明他們的會話已過期,並且他們需要重新開始。此時,然後重定向到應用程序的開始頁面。Session.IsNewSession爲真時如何攔截處理

我收到了一些奇怪的行爲。我正在逐步完成代碼,迫使我的Sessioni.IsNewSession成爲事實。在這一點上,我寫了一個JavaScript的調用到位於底部的文字控件。 JavaScript被調用,併發生重定向。

但是,發生了什麼是..我正在按一個按鈕,這是一個或多或少的「下一頁」按鈕,並觸發此代碼。正在顯示下一頁,然後發生警報和重定向。我期待的結果是保持在我收到「超時」的同一頁面上,警報彈出,然後重定向。

我在這些頁面的BaseClass中檢查Session.IsNewSession,覆蓋OnInit事件。

任何想法,爲什麼我得到這種行爲?

謝謝!

回答

0

有多種方式可以做到這一點。根據u會話超時具有hava腳本定時器(默認爲20分鐘)。 19分鐘後,只需在客戶端發出警報,並將頁面提交到同一頁面即可刷新。這可能不是很好的選擇,因爲用戶已經輸入了很多東西

或者其他方式是不會超時此頁面。 U可以在19分鐘後刷新頁面(U可以通過在服務器上放置一個div和iframe或圖像請求來做到這一點)。這對用戶來說可能是很好的經驗,因爲他不必再次輸入內容。與客戶交談提供這種選擇有時候是值得的。

+0

這兩種情況目前不是一種選擇。 爲什麼代碼不能執行我期望的功能? – TheGeekYouNeed 2010-03-15 23:49:52