国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設(shè)計 > 正文

ASP.Net中防止頁面刷新重復(fù)提交的幾種方法

2019-11-17 01:31:29
字體:
供稿:網(wǎng)友

asp.net中防止頁面刷新重復(fù)提交的幾種方法

【摘要】

目前很多網(wǎng)站都要提交頁面插入或更新數(shù)據(jù)庫,比如留言本,一個用戶提交留言后,如果按F5,就會重新提交一遍留言,導(dǎo)致數(shù)據(jù)庫出現(xiàn)兩條一模一樣的留言,本文介紹了幾種防止頁面刷新,導(dǎo)致重復(fù)提交數(shù)據(jù)的方法。

本站原創(chuàng),轉(zhuǎn)載請注明: http://beinet.cn/blog/

【全文】

1、也是最簡單和最常用的辦法,就是使用轉(zhuǎn)向頁面語句,分兩種: a.使用服務(wù)器端的 Response.Redirect("YourPage"); b.使用客戶端腳本 <script language=javascript>location.href='yourPage';</script> 這兩種方法的缺點是如果要保留頁面數(shù)據(jù)不太方便,如果不用保留可以采用。

2、操作完畢設(shè)置一個session,進入頁面時判斷這個Session是否為null,如果不是表示已經(jīng)提交過了,但是缺點就是這個頁面無法再提交了,必須在別的頁面清空這個Session。

3、是從網(wǎng)上搜索到的一種方案,學習并共享一下:DetectRefresh.aspx =========================== <%@ Page Inherits="StevenBey.Web.UI.Page" %> <html> <head> <title>Detecting Page Refresh [Demo]</title> </head> <body> <form runat="server"> <asp:button Text="Test Refresh" runat="server" /> </form> IsRefresh = <%= IsRefresh %> </body> </html>

StevenBey.Web.UI.Page.cs ====================== namespace StevenBey.Web.UI { public class Page : System.Web.UI.Page { PRivate bool _refreshState; private bool _isRefresh; public bool IsRefresh { get { return _isRefresh; } } protected override void LoadViewState(object savedState) { object[] allStates = (object[]) savedState; base.LoadViewState(allStates[0]); _refreshState = (bool) allStates[1]; _isRefresh = _refreshState == (bool) Session["__ISREFRESH"]; } protected override object SaveViewState() { Session["__ISREFRESH"] = _refreshState; object[] allStates = new object[2]; allStates[0] = base.SaveViewState(); allStates[1] = !_refreshState; return allStates; } } }


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 四川省| 平顶山市| 长寿区| 金门县| 剑河县| 武陟县| 靖宇县| 潼关县| 武功县| 静安区| 海宁市| 镇赉县| 华坪县| 石门县| 定陶县| 平遥县| 晋城| 砀山县| 垣曲县| 罗山县| 内丘县| 孟州市| 宜君县| 丰镇市| 蒙阴县| 扎赉特旗| 宣恩县| 巧家县| 凤台县| 依安县| 栖霞市| 绿春县| 阜新| 辽中县| 临朐县| 梁平县| 织金县| 正定县| 宁武县| 辽源市| 隆化县|