遮蔽重複提交表單

2021-09-22 08:51:32 字數 1554 閱讀 4505

讀了城南的部落格中的《遮蔽重新整理提交後台》一文之後,對於解決遮蔽重複提交表單有了更好的認識。

對於重複提交表單個人覺得有以下解決方案:

1、利用ajax提交,這樣的自然而然的不會再涉及到重複提交表單。

2、利用前後臺標記,判斷是否是重複提交-----------也就是城南部落格中的方法。

個人學習了城南部落格中的方法,加以自己的理解,做了下修改。

主要是的思想是:

自己寫乙個類,去繼承system.web.ui.page類,在此類中對page類擴充套件。即:在頁面下render到頁面時,傳送乙個到頁面的hide控制項並增加乙個session。當再次訪問時判斷發回的控制項的值和session值是否一致,從而確定當前操作是否是有重新整理導致的提交。

using

system;

using

system.collections.generic;

using

system.linq;

using

system.web;

//////

basepage 的摘要說明

///public

class

basepage:system.web.ui.page

//////

同步頁面和後台session的票據

/// private

void

synchrorefreshticket()

//////

比較hiddenfield的票據和session中儲存的票據是否相同,如果不相同則為通過重新整理的方式進行的提交

/// protected

bool

isrefreshed

else

}return

false

; }}}

using

system;

using

system.collections.generic;

using

system.linq;

using

system.web;

using

system.web.ui;

using

system.web.ui.webcontrols;

public

partial

class _default :basepage //

繼承自己寫的類

protected

void button1_click(object

sender, eventargs e)

else}}

c#" autoeventwireup="

true

" codefile="

default.aspx.cs

" inherits="

_default

" %>

"-//w3c//dtd xhtml 1.0 transitional//en""

">

"">

遮蔽重複提交表單

讀了城南的部落格中的 遮蔽重新整理提交後台 一文之後,對於解決遮蔽重複提交表單有了更好的認識。對於重複提交表單個人覺得有以下解決方案 1 利用ajax提交,這樣的自然而然的不會再涉及到重複提交表單。2 利用前後臺標記,判斷是否是重複提交 也就是城南部落格中的方法。個人學習了城南部落格中的方法,加以自...

表單重複提交

1.session token的方式 當表單載入時候,前端向伺服器申請乙個token,同時,伺服器將token放在session中。當提交表單時候,引數中帶著token,伺服器校驗token,如果相同則放行,同時清除session。如果不同,則說明重複提交。需要注意的是,如果請求返回了,或者重新整理...

防止表單重複提交

新增乙個使用者時,發現重複新增了4 5個,原來是重複提交了。怎麼解決這個問題呢,起初是在後端檢查新增的屬性是否已有,例如姓名和手機號是否重複,如果重複就不儲存,沒想到後來隨著業務的複雜化,新增乙個使用者所需時間越來越長,以致在檢查時還沒插入完畢。那就在提交時就關閉form,可是這樣一來,如果後端檢查...