我有一個頁面,它包含一個頂部窗體,向table1和下面添加新的記錄,GridView顯示了table1中具有編輯能力的記錄。在GridView編輯模式下關閉驗證
現在上面的表格只是一個文本框,它允許您在table1中輸入名稱,該文本框具有必需的字段驗證程序。然而,當gridview處於編輯模式時,驗證器會導致問題,因爲當用戶按下'update'時,由於驗證器是觸發器而沒有保存任何東西(因爲上面的表格中沒有任何內容)
我該如何解決這個問題?
我有一個頁面,它包含一個頂部窗體,向table1和下面添加新的記錄,GridView顯示了table1中具有編輯能力的記錄。在GridView編輯模式下關閉驗證
現在上面的表格只是一個文本框,它允許您在table1中輸入名稱,該文本框具有必需的字段驗證程序。然而,當gridview處於編輯模式時,驗證器會導致問題,因爲當用戶按下'update'時,由於驗證器是觸發器而沒有保存任何東西(因爲上面的表格中沒有任何內容)
我該如何解決這個問題?
您可以設置RequiredFieldValidator控件和添加按鈕具有相同的ValidationGroup名稱。像這樣:
<asp:Button ID="btnAdd" runat="server" OnClick="btnAdd_Click" ValidationGroup="addValidation" />
<asp:RequiredFieldValidator ID="nameRequired" ControlToValidate="txtName" runat="server" ValidationGroup="addValidation"></asp:RequiredFieldValidator>
...
<asp:Button ID="btnUpdate" runat="server" OnClick="btnUpdate_Click" />
因此,更新按鈕不會受到影響。
在gridview按鈕中使用cause validation爲false。
<asp:Button ID="Button2" runat="server"
CausesValidation="False"
Text="Cancel - Will Not Validate!" />
下面是一個例子:
http://www.java2s.com/Code/ASP/Asp-Control/CausesValidationFalse.htm
你必須把的CausesValidation = 「假」,在GridView的
<Columns>
<asp:CommandField ShowDeleteButton="True" ShowEditButton="True" CausesValidation="False"/>
完美的答案。謝謝你節省我的時間 –