閱讀429 返回首頁    go 阿裏雲 go 技術社區[雲棲]


asp.net關於WEB端用戶重複提交問題。禁用服務器控件按鈕問題。

之前也經常遇到這種問題。但是沒有去刻意研究並解決。也知道有很多解決方案。但是都沒有去親自實現。直到現在工作中出現這個棘手問題,才去尋找各種解決方案並研究。

還好網上有很多前輩的經驗。現在問題算是解決了。因此做個筆記以防後麵還會遇到此種問題。雖然這個解決方法不一定很好,但是還是可以實現的。

點擊一個按鈕,隻讓此按鈕的事件執行一次,防止用戶多次點擊,造成多次提交數據。因為此事件的方法執行需要一段時間,如果多次點擊會出現連接超時的情況。我的解決方案是點擊之後禁用這個按鈕,執行完方法後啟用。本以為直接設置Enabled就行了,但是這樣設置後,事件直接不會執行。因為是服務器空間。其實用js也可以控製。所以現在解決如下。

 protected void Page_Load(object sender, EventArgs e)
        {
                 this.report_output.Attributes["onclick"] = this.GetPostBackEventReference(this.report_output) + ";this.disabled=true;";
                this.data_output.Attributes["onclick"] = this.GetPostBackEventReference(this.data_output) + ";this.disabled=true;";
                this.message.Text = "";

            }

 

在事件方法執行後,執行以下代碼

this.report_output.Style.Remove("disabled");
this.data_output.Style.Remove("disabled");

 

最後更新:2017-04-02 06:51:53

  上一篇:go android---Timer和Handler
  下一篇:go android圖片的縮放 .