2009-08-17 10 views
1

古典的なページは4つのフレームセットで構成されています。 4つのフレームセットすべてが非アクティブな場合、ログインするためにタイムアウトします。フレームセットを持つ古典的なASPページのタイムアウトを設定する方法。Settimeout - Aspページのフレームセット

答えて

1

Deafultセッションタイムアウトは20分です。次のコードを追加して変更することができます

Session.Timeout (= intMinutes) 
ex: Session.Timeout= 10 

aspページに変更してください。

+0

私はSession.TimeOutはプロパティだと思います。 Session.TimeOut = 10にする必要があります。 – adatapost

+0

申し訳ありませんかわった。 – Shoban

0

あなたのセッションタイムアウト時間までカウントダウンしているJSページがあります(設定方法についてはShobansの回答を参照してください)。その後JSタイムアウト(つまりセッションタイムアウトに達した場合)であれば、ログインページにリダイレクト(クライアント側)することができます。このようなものがあります:

<script type="text/javascript"> 

// Get the current server side timeout (times 1000 to convert it into JS milliseconds 
var timeout = <%= Session.TimeOut * 1000 %>; 

// This is the function that does the framebusting and redirecting to your login page 
function GoToLogin() { 
    top.location.replace("yourloginpage.asp"); 
} 

// Set it up to run when the timeout expires 
setTimeout(GoToLogin, timeout); 

</script> 

あなたのユーザーがページをリロードするために何かすれば、あなたのタイマーはリセットされます。これをすべてのフレームに入れてはいけません。メインフレームに必要なのは本当に必要なだけです。ナビゲーションフレームには望みませんが、何のアクションも得られないかもしれません。

タイムアウトしてからサーバー側のコードがユーザーをログインページにリダイレクトできる場合は、ページを更新するだけです(これはフレームに表示されるため、ログインページにはとにかく上記のtop.locationトリックを使用するフレームバスター)。