ASP.NET如何关闭页面服务端及对话层清空

技术ASP.NET如何关闭页面服务端及对话层清空这篇文章给大家介绍ASP.NET如何关闭页面服务端及对话层清空,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。要清掉Session必须回到服务端,在客户

本文介绍了如何在ASP.NET关闭页面服务器并清空对话层。内容非常详细。感兴趣的朋友可以参考一下,希望对你有所帮助。

要清除会话,您必须返回服务器,在那里您不能更改服务器的内容。关闭ASP.NET页面服务器端对话层的清空。我们可以在——中使用ajax。首先,我们需要确定用户何时关闭了页面,这样我们就可以执行下一个操作。然而,HTML DOM并不要求页面关闭事件。只有onunload和onbeforeunload与ASP.NET的页面关闭相关,与ASP.NET的页面关闭或刷新后的事件相关,与ASP.NET的页面关闭或刷新前的事件相关,所以我们要使用onbeforeunload。确定用户是关闭页面还是刷新页面。代码如下:

窗户。onbefore unload=function(){//这个是在网上找到的,但是没有具体验证过。Varn=窗口。event.屏幕窗口。屏幕左侧;

varb=n document . document element . scrollwidth-20;

if(英国)。event,客户0 | |窗口。event。altKey)

{

ClearSession();

}

}

ClearSession()是ajax调用请求服务器,服务器在收到请求后执行清除Session的操作。关于Ajax的内容不多,下面是代码。

=====================默认值。aspx start==============================================

“% @”页面语言=“c#”AutoEventWireup=“true”

CodeFile=' Default . aspx . cs ' inherits=' _ Default ' %

!DOCTYPEhtmlPUBLIC '-//W3C//DTDXHTML 1.0 transitional//EN '

http://www . w3 . org/TR/XHTML 1/DTD/XHTML 1-transitional . DTD '

html xmlns=' http://www . w3 . org/1999/XHTML '

headrunat='服务器'

没有标题页/标题nb

sp;
<script type="text/javascript" src="script.js"></script>     
</head>  
<body>      
<form id="form1" runat="server">          
<div>              
<asp:Label ID="Label1" runat="server"></asp:Label>              
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="写入Session" /></div>      
</form>  
</body>  
</html>  
========================Default.aspx 结束===========================================   
========================Default.aspx.cs 开始===========================================   
using System;  
using System.Data;  
using System.Configuration;  
using System.Web;  
using System.Web.Security;  
using System.Web.UI;  
using System.Web.UI.WebControls;  
using System.Web.UI.WebControls.WebParts;  
using System.Web.UI.HtmlControls;     
public partial class _Default : System.Web.UI.Page  {      
protected void Page_Load(object sender, EventArgs e)      {                    
if (!string.IsNullOrEmpty(Request.QueryString["___command"]))          {              
string cmd = Request.QueryString["___command"];              
if (cmd == "ClearSession")                  
Session.Remove("name");//清空Session          
}             
if (Session["name"] != null)              
this.Label1.Text = Session["name"].ToString();      
}      protected void Button1_Click(object sender, EventArgs e)      
{          Session["name"] = "vvvvvvvvvvvvv";          
if (Session["name"] != null)              
this.Label1.Text = Session["name"].ToString();      
}  
}     
========================Default.aspx.cs 结束===========================================      
========================script.js 开始===========================================   
function GetXmlHttpObject()   {      
//创建XMLHttpRequest对象来发送和接收HTTP请求与响应     
 xmlHttpObj = null;      try       {          
 // FireFox Opera 8.0+ Safari          
 xmlHttpObj = new XMLHttpRequest();          
 if(xmlHttpObj.overrideMimeType)          
  {              
  xmlHttpObj.overrideMimeType('text/xml');         
   }     
  }      
   catch(e)       {          
   // IE          try           {              
   xmlHttpObj = new ActiveXObject("Msxml2.XMLHTTP");         
    }           
    catch(e)           
    {             
     xmlHttpObj = new ActiveXObject("Microsoft.XMLHTTP");         
      }     
       }      
       return xmlHttpObj; 
        }    
         function StateChanged()   {      
         if(___xmlHttp.readyState == 4)       {           
         if(___xmlHttp.status == 200)           {          
   }           else           {         
             }      
          }  
 }     
          var ___xmlHttp=null; 
   function ClearSession()  
   {     
             if(___xmlHttp==null)    
                   ___xmlHttp = GetXmlHttpObject();    
  if(___xmlHttp == null)        
                        return false;              
 var url = "?___command=ClearSession&___clientRandom=" + Math.random();         
 ___xmlHttp.open("GET", url, true);      
 ___xmlHttp.onreadystatechange = StateChanged;      
 ___xmlHttp.send(null);        }     
 window.onbeforeunload = function()   {          
  var n = window.event.screenX - window.screenLeft;      
     var b = n > document.documentElement.scrollWidth-20;     
         if(b && window.event.clientY < 0 || window.event.altKey)   
   {               ClearSession();       
   }   
 }

关于ASP.NET如何关闭页面服务端及对话层清空就分享到这里了,希望

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/119737.html

(0)

相关推荐

  • java bean与ejb有哪些区别

    技术java bean与ejb有哪些区别这篇文章主要为大家展示了“java bean与ejb有哪些区别 ”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“java bean与ej

    攻略 2021年12月3日
  • 向日葵的特点是什么,向日葵最主要的特点是什么?谢谢

    技术向日葵的特点是什么,向日葵最主要的特点是什么?谢谢向日葵最主要的特点:一向日葵的特点是什么、外形特点向日葵的茎直立生长,植株高度在1-3. 5m之间。它的叶片为广卵形,正反两面都长有绒毛,并且比较粗糙,叶缘处还长有锯

    生活 2021年10月30日
  • math函数excel使用技巧(math库中的数学函数)

    技术Math函数怎么使用本篇内容主要讲解“Math函数怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Math函数怎么使用”吧!Math函数Math.round(3.6

    攻略 2021年12月22日
  • 居里温度,铁电材料的居里点是多少

    技术居里温度,铁电材料的居里点是多少铁的居里温度是770℃居里温度对于所有的磁性材料来说居里温度,并不是在任何温度下都具有磁性。一般地,磁性材料具有一个临界温度Tc,在这个温度以上,由于高温下原子的剧烈热运动,原子磁矩的

    生活 2021年10月28日
  • 夜晚的英语,晚上的单词用英语怎么说

    技术夜晚的英语,晚上的单词用英语怎么说英文:night 读法2113:英 [naɪt] 美 [naɪt] 释义:n.夜;夜晚5261;晚上夜晚的英语,夜晚(夜里就寝前的一段时间4102) 短语1653: 1、waste

    生活 2021年10月26日
  • 台湾云服务器租用选择台湾云服务器的优势

    技术台湾云服务器租用选择台湾云服务器的优势随着现在亚太地区海外云服务器的火爆,现在台湾云服务器的需求量也大增,下面就来谈谈选择台湾云服务器的五大理由更好的正常运行时间和可用性 与传统VPS不同,云服务器的可用性不取决于单

    礼包 2021年10月20日