当我们使用JavaScript Asp.net C#关闭任何浏览器时如何关闭浏览器会话

时间:2019-07-17 06:54:19

标签: c# asp.net

我正在使用以下代码关闭浏览器,当我们关闭浏览器时,浏览器会话将过期;从下面的代码,浏览器将按预期关闭,但如果单击“后退”按钮或输入地址url,则该会话将终止,并重定向到登录页面

ASP.net项目 我已经尝试在关闭浏览器时使用onunload事件

 <script type="text/javascript">
          var clicked = false;
          function CheckBrowser() {
              if (clicked == false) {
                  //Browser closed   
              } else {
                  //redirected
                  clicked = false;
              }
          }

          function bodyUnload() {
              if (clicked == false)//browser is closed  
              {
                  var request = GetRequest();
                  request.open("GET", window.location.origin + "/" + window.location.pathname.split('/')[1] + "/Default.aspx", false);
                  request.send();
              }
          }

          function GetRequest() {
              var xmlhttp;
              if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
                  xmlhttp = new XMLHttpRequest();
              }
              else {// code for IE6, IE5
                  xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
              }
              return xmlhttp;
          }
          $(document).on('keydown', function (e) {
              if (e.keyCode == 116 || (e.ctrlKey && e.keyCode == 82)) {
                  clicked = true; //shortcuts for F5 and CTRL+F5 and CTRL+R

              }
           }); </script> <body onunload="bodyUnload();" onclick="clicked=true;"> 

在Default.aspx页面中,我在页面加载事件中有清除会话

关闭浏览器时应清除浏览会话,但按此按钮不应该影响其他键,当前,如果我们按返回按钮或重新加载按钮,则浏览器会话将被清除,而无需在JavaScript中调用onunload事件。

谢谢。

0 个答案:

没有答案