2015-10-15 95 views
0

我有一個帶有兩個按鈕的窗體 - submitSave和submitProcessed。Html - 在ONE提交過程中阻止其他提交事件?

submitSave將觸發代碼在status =「saved」的數據庫中創建一個條目。 submitProcessed將查找先前創建的條目並執行其他邏輯。如果找不到任何條目,則會創建一個新條目。

某些測試用例發生了什麼事情,有時用戶單擊了submitSave按鈕,數據庫仍處於創建該條目的過程中。然後用戶再次快速點擊submitProcessed按鈕 - 因爲表中的上一個條目尚不可用,所以會創建一個重複的條目。

關於如何處理這個問題的任何想法,所以它不會在表中創建重複的條目?我想在一個按鈕被點擊後禁用另一個按鈕。

+0

到目前爲止你試過了什麼?分享你的代碼。 – taxicala

回答

3

隱藏submitProcessed並顯示它一旦submitSave已完成處理

第二個選項: 在submitSave點擊設置一個變量「處理」,以肯定和否定做

時,當有人點擊submitProcessed按鈕,它將檢查變量狀態是否爲yes,並將相應地執行任務。

2
  1. 使用位於頂部的div(z-index)覆蓋屏幕以停止發生點擊。一旦你的過程完成,刪除這個覆蓋。

  2. 禁用您不希望用戶點擊的按鈕,直到它們被允許點擊它們。

  3. 使用信號量變量來告訴您何時允許或停止發生點擊。一旦發生點擊,將該變量設置爲告訴其他點擊,直到該變量表示他們可以處理爲止。

  4. 隱藏您不希望用戶點擊的按鈕,直到它們被允許點擊它們。