2012-05-18 64 views
0

我的asp.net頁面有多個text-boxesDropDownLists,它們都具有必需字段驗證程序。禁用asp.net頁面中的驗證控件

我的網站也有多個頁面,您可以通過點擊一個按鈕來移動。 (所有頁面都有所有按鈕)當頁面加載並決定我想在不向表單中輸入信息的情況下轉到其他頁面時,我點擊一個按鈕移動到另一個頁面,驗證彈出,我無法更改該頁面,它每次都阻止我?

有關如何阻止此問題的任何想法?

回答

0

一套物業CausesValidation = "false"到你不想引發驗證

+0

感謝它的工作! – developthestars

+0

不客氣。如果它回答了您的問題,您可以將其標記爲答案。 –

0

CausesValidation="false"按鈕上的按鈕;)

0
<asp:Button CausesValidation="True|False" /> 

獲取或設置指示驗證是否執行時的值按鈕控件被點擊。

閱讀更多關於Button.CausesValidation Property

1

正如其他人所提到的CausesValidation屬性設置爲false。

<asp:Button ID="MyButton" Text="Go Back" CausesValidation="False" /> 

這是直接從Microsoft Help Page

默認情況下,點擊一個按鈕控件時執行頁面驗證。頁面驗證確定與頁面上的驗證控件關聯的輸入控件是否都通過驗證控件指定的驗證規則。

通過使用CausesValidation屬性單擊Button控件時,您可以指定或確定是否在客戶端和服務器上執行驗證。要防止執行驗證,請將CausesValidation屬性設置爲false。

注意: 當您使用PostBackUrl屬性回發到其他頁面時,應該將CausesValidation屬性設置爲false。發佈回不同頁面時,您應該明確檢查驗證。有關示例,請參閱PostBackUrl屬性的備註部分。 對於重置按鈕或清除按鈕,此屬性通常設置爲false,以防止單擊按鈕時執行驗證。

當CausesValidation屬性的值設置爲true時,還可以使用ValidationGroup屬性指定Button控件導致驗證的驗證組的名稱。

1

我知道你已經找到了解決方案,但我只是想拋出另一種方法讓人們看到。 使用驗證器時,通常使用ValidationGroups。驗證者屬於ValidationGroup時,只能由驗證組中的其他控件觸發。例如:

<asp:TextBox ID="NameBox" runat="server"/> 
<asp:RequiredFieldValidator ID="NameVal" ControlToValidate="NameBox" 
    ValidationGroup="ValSubmit" runat="server"/> 
//...More input fields and validators... 

<asp:Button ID="SubmitButton" ValidationGroup="ValSubmit" runat="server"/> 

使用這種方法與「ValSubmit」任何的ValidationGroup驗證只能由提交按鈕,而不是由其他控件來觸發。現在,您不必在其他所有引起回發的情況下將CausesValidation =「false」。