資料載入中

我是 chung

鎖住記憶

  • Chung
  • 0°C
  • 9 年又 114 天

ajax防止重複提交

會發生重提交的原因,大致上是因為考驗人與系統間的耐性~

AJAX(非同步的JavaScript與XML技術)的好處是可以僅向伺服器傳送並取回必須的資料,並在用戶端採用JavaScript處理來自伺服器的回應。

所以大大減少web的負荷~取資料的速度也變快,因為我只取我要的資料顯示。

但是卻會遇到一個問題,當使用者透過AJAX傳送需求時,若是系統沒有提醒訊息~

或根本就是網路過慢來不及反應回答使用者的需求時~

使用者通常會沒耐性的多發送了不少次傳送訊息。

而這就會變成,AJAX的請求第一筆還未處理完就接著要處理第二筆第三筆.....最後....當了。

我自己就常常遇到這樣的問題。

現在我用下列的方式,試著解決這些問題。
page_requestLock = 0;//預設值為解鎖狀態
if(page_requestLock === 1){
return;
}else{
page_requestLock = 1
$.ajax({
async: false,
type: "POST",
url: "$URL",
data: dataString,
success : function(res){
$("#page_list").html(res);
page_requestLock = 0;
},
error: function(){
alert('載入錯誤!');
page_requestLock = 0;
}

})
}

首先我先宣告了一個變數 page_requestLock 並將預設值設定為0

把他當作解鎖的狀態。

這樣,當AJAX執行時再將 page_requestLock 的值改變為1

鎖定的狀態。

直到完成訊息提交並顯示時,才又將狀態改回解鎖的狀態。

目前測試執行中~

以上紀錄。

台北市內湖區江南街71巷75弄 Go

  • AJAX技術在網頁應用中的優勢
  • 使用者耐性不足導致重提交問題
  • 解決AJAX請求重複發送的方法
  • 非同步資料傳輸對網站效能的影響
  • 如何有效管理AJAX請求的狀態鎖定
https://innstory.com/story-ajax防止重複提交-1276

上一篇
 網站植入Facebook登入FBapi請求修改

下一篇
走了一趟文具區這小天使是我小時候最常用的品牌鉛筆沒想到現在還有啊 

發表留言

  • 哲煜

    你的觀察很有道理。AJAX雖然能提高效率,但使用者的耐性確實是一個問題。像你提到的鎖定狀態,應該能有效減少重提交的情況。希望測試能順利。
    2026-09-14 下午 7 點回覆

作者簡介

我是chung,網路工作者

主業是網站系統開發建置
副業是做夢、紀錄故事
作品請參考:teme.biz
做夢請參考:innstory.com
聯絡:chung.teme@gmail.com

有人用筆寫日記,有人用歲月寫日記,有人用照片寫日記,而我,用innstory寫日記。


推薦閱讀

作者其他相關類別故事

爸爸,我的千金線斷了

爸爸,我的千金線斷了

Chung 2026-04-08 下午 8 點 804

今天去接5G放學時,她一臉焦慮地對我說: 「爸爸,我的千金線斷了。」 千金?什麼千金?我一時還反應不...

2026再次來到奧林P客錄影現場

2026再次來到奧林P客錄影…

Chung 2026-07-01 下午 9 點 557

2026年的今天,再次來到《奧林P客》的錄影現場。 這回,5G也一起參加了。 是說,她本人原本可是千...

妳趴趴熊啊

妳趴趴熊啊

Chung 2026-08-14 上午 10 點 452

這一陣子忙工作,似乎好一段時間沒紀錄了。 然後一想到紀錄,就覺得紀錄5G是最有趣的。 因為她永遠都活...


推薦閱讀

這個地址也發生了其他故事

看來白川鄉,得再去一次了

看來白川鄉,得再去一次了

Chung 9 年又 154 天 2.5K

看來白川鄉,得再去一次了~

唉這傢伙非常怕寂寞啊離開幾秒都不行@@

唉這傢伙非常怕寂寞啊離開幾秒…

Chung 9 年又 151 天 2K

唉…這傢伙非常怕寂寞啊~離開幾秒都不行@@

情境Blog

情境Blog

Chung 9 年又 148 天 2.5K

一直都認為,除了文字跟圖片外,應該要有其他的方式來將寫故事時的心情帶給閱讀者。 很久很久以前,我們會...


附近景點

這個地址-台北市內湖區江南街71巷75弄-附近還有甚麼?

  • 延平基督教會
  • 舊高等農林學校作業室(磯永吉紀念室)
  • 寶藏巖
  • 總統府
  • 臺大醫院舊館
  • 新芳春茶行