0

ブラウザーの終了検出に関する問題があります。ユーザーがブラウザーを突然閉じたときの asp.net アプリケーションでは、loginstatus を true から false に更新するログアウト サービスを呼び出す必要があります。以下のように実行しています。

function Logout() {
            var Userid = $("#hdnfuid").val();
            var branch = $("#hdnfbranch").val();
            var service = LogoutService.Logout(Userid + "," + branch, SucceededCallback);
            //alert(service);
        }
        function SucceededCallback(result) {
        }

var isClose = false; ;
        //this code will handle the F5 or Ctrl+F5 key
        //need to handle more cases like ctrl+R whose codes are not listed here
        document.onkeydown = checkKeycode
        function checkKeycode(e) {
            var keycode;
            if (window.event)
                keycode = window.event.keyCode;
            else if (e)
                keycode = e.which;
            if (keycode == 116) {
                isClose = true;
            }
        }

function somefunction() {
            isClose = true;
        }
        function doUnload() {
            if (!isClose) {                
                var selection = confirm('window is closing');
                if (selection == true)
                {var x=confirm("closing browser");
                  if(x==true)Logout();
                  else
                    return false;}
                else {
                    return false;
                }                    
            }

しかし、問題は、その場合に確認ボックスのキャンセルをクリックすると、ブラウザも閉じてしまうことです。また、global.asax の session_end イベントで同じサービスを呼び出す必要があります。これを行う方法を教えてください。}

しかし、問題はそれです

4

0 に答える 0