通常 Web 表單在執行 submit 時,會有需要將頁面的控制項鎖定,不要讓使用者重覆按鍵,此範例就是在 submit 時鎖定了整個頁面的控制項,不用針對特定的按鈕去鎖定。
在 Page_Load 事件中加入如下程式碼就可以達到這個需求,若將這個函式寫到 BasePage 就可以適用所有繼承的頁面。
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Dim sScript As String = String.Empty sScript = "function FormDisabled()" & vbNewLine & _ "{" & vbNewLine & _ "var oForm = document.forms['form1'];" & vbNewLine & _ "if (!oForm) {" & vbNewLine & _ " oForm = document.form1;}" & vbNewLine & _ "oForm.disabled=true;" & vbNewLine & _ "}" Me.ClientScript.RegisterClientScriptBlock(Me.GetType, "FormDisabled", sScript, True) Me.ClientScript.RegisterOnSubmitStatement(Me.GetType, "FormDisabled", "setTimeout('FormDisabled()',0);") End Sub
ASP.NET 魔法學院
2008/3/17 00:09| 閱讀數 : 1973 | 我要推薦 | One Comment | 文章分類: ASP.NET 基礎 | 訂閱
Sean Chang 2008/9/15 下午 01:11 回覆
# re: 頁面 submit 時鎖定整個頁面的控制項
感謝, 這樣子讓表單的控制方便了許多.但是,Button是Disabled了,然而TextBox還是可以輸入資料.不知大哥有何解法??謝謝
☆ 有些事現在不做,就一輩子都不會做了 ☆