ASP.Net防止刷新自動(dòng)觸發(fā)事件的解決方案
使用asp.net,在刷新頁(yè)面的時(shí)候會(huì)自動(dòng)觸發(fā)服務(wù)器端的事件。舉個(gè)簡(jiǎn)單的例子,如:一個(gè)注冊(cè)頁(yè)面,我們填寫(xiě)完注冊(cè)信息之后,如果按F5刷新之后,會(huì)自動(dòng)觸發(fā)到Button事件上,這樣就造成了又注冊(cè)了一次的麻煩。
我先前的解決方案:用關(guān)鍵字查詢,如有相同,則提示已有此用戶。
但是這種方案不能在沒(méi)有表識(shí)的情況下使用,他會(huì)重新提交。鑒于此,我尋找了一種新的解決方案,很慶幸,在朋友的提點(diǎn)下,迸發(fā)了這樣的解決方案,肯定有更好的解決方案,不吝賜教。
解決思路:刷新時(shí),捕捉KeyPress,讓他觸發(fā)其他無(wú)用的事件。
1、捕捉F5事件的JavaScript
window.document.onkeydown = KeyStroke;
function KeyStroke()
{
var key = event.keyCode;
event.srcElement.releaseCapture();
if(key == 116)
{
document.getElementById("Button1").click();
event.keyCode=0;
event.returnValue=false;
}
}
2、aspx頁(yè)面放置一個(gè)Button
<asp:Button id="Button1" style="Z-INDEX: 102; LEFT: 344px; POSITION: absolute; TOP: 408px; WIDTH: 0px;" runat="server"
Text="Button"></asp:Button>
3、Button事件
private void Button1_Click(object sender, System.EventArgs e)
{
Response.Write( "You have pressed the key F5");
}
這個(gè)“舍車保帥”的方案,能解決刷新自動(dòng)觸發(fā)事件的解決方案這個(gè)小問(wèn)題,如果誰(shuí)有更好的方案,希望告訴我一聲,不勝感激!
- asp.net ListView 數(shù)據(jù)綁定
- javascript RadioButtonList獲取選中值
- AspNetAjaxPager,Asp.Net通用無(wú)刷新Ajax分頁(yè)控件,支持多樣式多數(shù)據(jù)綁定
- asp.net TextBox回車觸發(fā)事件 圖片在img顯示
- jquery獲取ASP.NET服務(wù)器端控件dropdownlist和radiobuttonlist生成客戶端HTML標(biāo)簽后的value和text值
- asp.net中將數(shù)據(jù)庫(kù)綁定到DataList控件的實(shí)現(xiàn)方法與實(shí)例代碼
- ASP.NET MVC DropDownList數(shù)據(jù)綁定及使用詳解
- js獲取RadioButtonList的Value/Text及選中值等信息實(shí)現(xiàn)代碼
- jquery判斷RadioButtonList和RadioButton中是否有選中項(xiàng)示例
- ASP.NET中RadioButtonList綁定后臺(tái)數(shù)據(jù)后觸發(fā)點(diǎn)擊事件
相關(guān)文章
在Asp.net網(wǎng)頁(yè)上寫(xiě)讀Cookie的兩種不同語(yǔ)法介紹
asp.net開(kāi)發(fā)時(shí),為了存儲(chǔ)一些信息通常是Session與Cookie同時(shí)使用,本文將會(huì)補(bǔ)充一下Cookie相關(guān)的資料,感興趣的朋友可以了解一下在網(wǎng)頁(yè)上寫(xiě)讀Cookie的實(shí)現(xiàn),希望本文對(duì)你有所幫助2013-01-01VsCode插件開(kāi)發(fā)之插件初步通信的方法步驟
這篇文章主要介紹了VsCode插件開(kāi)發(fā)之插件初步通信的方法步驟,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-05-05給Repeater控件里添加序號(hào)的5種才常見(jiàn)方法介紹
Repeater是我們經(jīng)常用的一個(gè)顯示數(shù)據(jù)集的數(shù)據(jù)控件那么我們?cè)撛趺礊镽epeater控件添加序號(hào)呢?下面編輯為大家介紹幾種常用的為Repeater控件添加序號(hào)的方法2013-09-09asp.net url重寫(xiě)后頁(yè)面回傳問(wèn)題
最近在做項(xiàng)目時(shí)遇到了URL重寫(xiě)后當(dāng)頁(yè)面回傳時(shí),url又刷回原值;這個(gè)問(wèn)題困擾了很久,終于找到解決辦法了。2009-11-11jquery.pagination +JSON 動(dòng)態(tài)無(wú)刷新分頁(yè)實(shí)現(xiàn)代碼
jquery.pagination +JSON 動(dòng)態(tài)無(wú)刷新分頁(yè)實(shí)現(xiàn)代碼,需要的朋友可以參考下。2011-12-12ASP.NET數(shù)據(jù)庫(kù)緩存依賴實(shí)例分析
這篇文章主要介紹了ASP.NET數(shù)據(jù)庫(kù)緩存依賴,以實(shí)例的形式分析總結(jié)了數(shù)據(jù)庫(kù)緩存依賴的原理與用法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2014-10-10.NET?Core利用?AsyncLocal?實(shí)現(xiàn)共享變量的代碼詳解
在Web?應(yīng)用程序中,我們經(jīng)常會(huì)遇到這樣的場(chǎng)景,如用戶信息,租戶信息本次的請(qǐng)求過(guò)程中都是固定的,我們希望是這種信息在本次請(qǐng)求內(nèi),一次賦值,到處使用。本文就來(lái)探討一下,如何在.NET?Core?下去利用AsyncLocal?實(shí)現(xiàn)全局共享變量2022-04-04asp.net 光棒效應(yīng)實(shí)現(xiàn)代碼
asp.net 光棒效應(yīng)(今天剛剛學(xué)到的)2009-12-12