台灣最大程式設計社群網站
線上人數
1202
 
會員總數:246138
討論主題:189722
歡迎您免費加入會員
討論區列表 >> ASP.NET >> button 雙擊問題
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
button 雙擊問題
價值 : 30 QP  點閱數:186 回應數:5
樓主

小裕
初學者
137 218
3428 417
發送站內信

請問送資料的時候,我在google有人提到的解決雙擊送資料方式是加上如下這段,
但還是一樣會出現同樣的東西送兩次
我是要送歷程資料



<asp:ImageButton ID="ImageButton3" ToolTip="簽核" runat="server" ClientIDMode="Static" OnClientClick="return confirm('Are you sure?');this.disabled = true; setTimeout('enableButton()', 1500);" UseSubmitBehavior="false" ImageUrl="~/Data/modMTS1.gif" OnClick="ImageButton3_Click" />

搜尋相關Tags的文章: [ button 雙擊問題 ] ,
本篇文章發表於2020-11-19 17:17
1樓
作者回應

小裕
檢舉此回應
補上
javascript

<script type="text/javascript">
function enableButton() {
document.getElementById('ImageButton3').disabled = false;
}
</script>
本篇文章回覆於2020-11-19 17:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

小裕
檢舉此回應
我測試用button的時候,看按鈕是有反應∼會變成disable的感覺(也就不能按)
會差在imagebutton 跟 button有關?
本篇文章回覆於2020-11-19 17:25
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

topcat
捐贈 VP 給 topcat 檢舉此回應
您是在Client端檔了不要按第二次
但是按下送出(假設是PostBack)過程太久
使用者按了重新整理(結果又PostBack一次)
這似乎就...

小喵覺得...
1.後端也是要處理(不能只靠前端的按鈕)
2.處理過程要有Transaction(確保交易過程的完整性)
3.處理過程,要判斷是否有重複的Key值,如果有,應該中止並且RollBack

您思考看看
^_^

本篇文章回覆於2020-11-19 17:34
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
回應

MIS2000 Lab
檢舉此回應
題外話,我一直很好奇
-- 網頁上的按鈕,User要求「Double-Click」到底是什麼意思?
-- User到底有什麼想法?非得在網頁上這樣做才行

曾遇見過一次,那位User提出這種需求
我只有好心提醒他「您在哪個網頁看過這種作法,能否介紹給我看一下?」

後來他就自己撤下這要求了 :-P
本篇文章回覆於2020-11-24 16:05
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
作者回應

小裕
檢舉此回應
to:小喵

依據你的建議除了前端以外,
我在後端加上

//防止按鈕雙擊
ImageButton3.Attributes.Add("onclick", " this.disabled = true; __doPostBack('ImageButton3', ''); return false;");

//按鈕執行最後加上
ImageButton3.enable=true;

我再觀察看看是否還有例外產生
另外這個歷程不會有重複的Key值
所以每按一次簽核就會留下紀錄
之前還沒加上這個判斷,在資料上發現重複了,
真的是每發生一個問題,就真的學到一課.

本篇文章回覆於2020-11-24 16:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.