我有表單數據,當用戶單擊提交按鈕時,我插入到數據庫中。問題在於,如果用戶刷新頁面後原始提交,表單數據將被重新提交併因此第二次插入到數據庫中。我怎樣才能解決這個問題?如何停止刷新頁面上的事件刷新
0
A
回答
0
使用合適的機制來檢測雙張貼後提交按鈕事件。 我更願意使用以下內容來檢測底層請求是否加倍發佈。
private bool refreshState;
private bool isDoublePosted;
protected bool IsInDoublePosting
{
get
{
return isDoublePosted;
}
}
protected override void LoadViewState(object savedState)
{
object[] states = (object[])savedState;
base.LoadViewState(states[0]);
refreshState = Convert.ToBoolean(states[1]);
isDoublePosted = (refreshState == Convert.ToBoolean(Session["IsInDoublePosting"]));
}
protected override object SaveViewState()
{
Session["IsInDoublePosting"] = refreshState;
object[] states = new object[3];
states[0] = base.SaveViewState();
states[1] = !refreshState;
return states;
}
在您的按鈕單擊事件處理程序:
if (!this.IsInDoublePosting)
{
// your code goes here
}
0
嘗試詢問(在事件處理函數中)關於發件人的信息。
0
從你的服務器端給予的Response.Redirect(「yourpage」)處理您的請求
相關問題
- 1. 停止刷新頁面
- 2. 如何停止頁面的刷新?
- 3. 如何停止刷新頁面
- 4. 如何從運行停止Page_Load事件,如果刷新頁面
- 5. 如何在刷新頁面時停止重新提交頁面?
- 6. 如何防止頁面刷新後發生上次事件?
- 7. 停止表單刷新頁面提交
- 8. 停止頁面刷新某些值?
- 9. 停止刷新不響應頁面
- 10. 停止頁面時,DIV刷新
- 11. 停止自動頁面刷新
- 12. 停止刷新頁面點擊
- 13. 啓動/停止腳本刷新頁面
- 14. 停止刷新頁面按鈕單擊
- 15. SignalR:如何停止創建新的連接頁面刷新
- 16. 如何停止DataGridView刷新?
- 17. 模板刷新停止jQuery事件
- 18. 防止按F5上的頁面刷新
- 19. 防止按鈕serverclick在每個頁面上刷新刷新
- 20. 防止Javascript頁面刷新
- 21. 防止HTML頁面刷新
- 22. 阻止頁面刷新
- 23. Yodlee停止刷新
- 24. 如何阻止頁面自動刷新?
- 25. 如何阻止Jquery ajaxForm()刷新頁面?
- 26. 如何防止頁面刷新?
- 27. 如何防止JSP頁面刷新
- 28. 如何防止頁面被刷新?
- 29. 如何防止刷新頁面時點擊事件加載
- 30. 將ScriptPath添加到<asp:scriptmanager刷新頁面。如何阻止頁面刷新?
看到此鏈接http://www.codeproject.com/kb/aspnet/SyncControl.aspx 標記爲答案,如果你的作品。 – renjucool 2010-06-15 09:53:58