2011-04-14 189 views
4

我在asp.net頁面上有一個聯繫頁面。 我有~5個驗證器可以出錯,我有一個ValidationSummary。驗證問題摘要

問題是,當我點擊「SubmitButton」div時,所有的控件都應該消失,帶有ValidationSummary的div應該會出現。

但我不知道如何realiza,因爲在一個正常的按鈕/ linkbutton我不會有回發可見/不可見的DIV的。有了回傳,我不會獲得ValidationSummary的信息。

希望我能正確地解釋它,所以你明白我:)

+0

ValidationSummary顯示發生的錯誤(如果您有客戶端腳本進行驗證,則不需要回傳)。如果你顯示ValidationSummary,那麼你有錯誤,那麼如果你隱藏了控件,他們會如何解決它們? – Prescott 2011-04-14 16:33:12

+0

我認爲你應該使用自定義驗證器,如果失敗,隱藏Divs – Ali 2011-04-14 16:39:55

+0

用一個按鈕「返回」? – Kovu 2011-04-14 16:40:08

回答

3

驗證摘要顯示/隱藏自身,是你想要的東西來控制?無論如何,你是對的,你必須在客戶端JavaScript中做到這一點。

一種方法是手動調用驗證方法Page_ClientValidate,並且不依賴於默認驗證功能。

另一種方式是通過做替換默認客戶端功能:

var fn = Page_ClientValidate; 
Page_ClientValidate = function(..) { 
    var result = fn(..); 

    if (!!result) 
     //Valid, 
    else 
     //Invalid, swap divs 

    return result; 
} 

看看客戶端上的驗證提供給您的方法,就可以使用這種技術來替代默認的實現:http://msdn.microsoft.com/en-us/library/aa338815(v=vs.71).aspx

HTH。