掃描二維碼關注

首頁 APP開(kāi)發小(xiǎo)程序開(kāi)發 微信公衆号 網站建設 營銷推廣 經典案列 産品服務 關于我們

“學習(xí)不僅是掌握知識”

向書(shū)本學習(xí),還要向實踐學習(xí)、向生活學習(xí)。消化已有(yǒu)知識,
而且要力求有(yǒu)所發現、有(yǒu)所發明(míng)、有(yǒu)所創造

防刷新重複提交、防後退方法

2019/3/1 18:38:13

防刷新重複提交、防後退方法

提交後禁用(yòng)提交按鈕

如(rú)果提交後,按F5刷新怎麽辦?

使用(yòng)Session

在提交的(de)頁面也(yě)就是數據庫處理(lǐ)之前:

 

if session("ok")=true then
   response.write "錯誤,正在提交"
   response.end
end if


數據處理(lǐ)完後,修改session("ok")=false。

數據處理(lǐ)成功馬上(shàng)Redirect到(dào)另外一個(gè)頁面

操作後刷新的(de)确是個(gè)問題,可(kě)以使用(yòng)跳轉頁面、關閉本頁面,如(rú)果是有(yǒu)參數數據條件(jiàn)來控制(zhì)的(de),那就應該好做了,可(kě)以直接修改window.location的(de)值,把參數全部改掉,這樣就差不多了。

缺點:簡單地(dì)運用(yòng)Response.Redirect将不再有(yǒu)效,因爲從一個(gè)頁面轉到(dào)另一個(gè)頁面,都(dōu)必須用(yòng)客戶端代碼清除location.history。注意,這種方法清除的(de)是最後一個(gè)訪問曆史記錄,而不是全部的(de)訪問記錄。 點擊後退按鈕,再點擊後退按鈕,可(kě)以看到(dào)這時打開(kāi)的(de)是本頁面之前的(de)頁面!(當然,這是在客戶端啓用(yòng)了JavaScript功能(néng)的(de)條件(jiàn)下。)

如(rú)果按後退,怎麽辦?

防止網頁後退--禁止緩存

在進行(xíng)數據庫添加操作的(de)時候,如(rú)果允許後退,而正巧有(yǒu)刷新了頁面,就會(huì)再次執行(xíng)添加操作,無疑這不是需要的(de),像一般網上(shàng)很多禁止緩存的(de)代碼,有(yǒu)時并不可(kě)靠,這時隻要在操作的(de)頁面加上(shàng)就可(kě)以了,在網頁的(de)裏指定要定向的(de)新頁,再點後退,看是不是不會(huì)再退到(dào)剛才的(de)操作頁面了,實際上(shàng)已經把這個(gè)曆史給删除了

ASP:
Response.Buffer = True   
Response.ExpiresAbsolute = Now() - 1   
Response.Expires = 0   
Response.CacheControl = "no-cache"

ASP.NET:
Response.Buffer=true;
Response.ExpiresAbsolute=DateTime.Now.AddSeconds(-1);
Response.Expires=0;
Response.CacheControl="no-cache";

究竟怎樣才能(néng)"禁用(yòng)"浏覽器(qì)的(de)後退按鈕?或者“怎樣才能(néng)防止用(yòng)戶點擊後退按鈕返回以前浏覽過的(de)頁面?”

遺憾的(de)是,無法禁用(yòng)浏覽器(qì)的(de)後退按鈕。

防止網頁後退--新開(kāi)窗口

用(yòng)window.open彈出表單頁面,點提交後關閉該頁;處理(lǐ)提交的(de)ASP頁也(yě)是用(yòng)彈出,設定表單的(de)target,點提交時window.open("pagelist.html","_blank"),然後用(yòng)JS來提交表單,完成後window.close();
簡單的(de)說,就是提交表單的(de)時候彈出新窗口,關閉本窗口。
 


深圳市南山區南山街(jiē)道南海(hǎi)大(dà)道西(xī)桂廟路(lù)北陽光(guāng)華藝大(dà)廈1棟4F、4G-04

咨詢電話(huà):136 8237 6272
大(dà)客戶咨詢:139 0290 5075
業(yè)務QQ:195006118
技術(shù)QQ:179981967

更多可(kě)以了解的(de)信息

客戶案列
新聞資訊
資質榮譽
團隊風采
項目進度查詢

售前QQ咨詢
QQ溝通 項目QQ溝通

精銳軟件(jiàn)

Copyright© 2018-2023 深圳市無窮大軟件技術有限公司 All Rights Reserved. 京ICP證000000号 公安備案号:粵公網安備44030502009460号