2015-10-19 24 views
0

我有2個表單控件。配置angularjs在基於表達式的表單控件上設置ng無效

HTML

<input name="password" 
     required 
     type="password" 
     ng-model="form.password" /> 

<input name="confirmPassword" 
     required 
     type="password" 
     custom-validator 
     ng-model="form.confirmPassword" /> 

目前,他們獨立,並在密碼無效的情況下工作,angularjs還是(這是正確的)設置confirmPassword輸入的類NG-無效,如果confirmPassword控件的輸入是無效的。

我需要能夠添加一個條件的某處,以便'ng-invalid'類只在第一個控件是$ valid(form.password。$ valid)時才被設置。

回答

1

您需要使用angularjs' developer guide中記錄的自定義$ validator指令。

+0

不過謝謝你,但我開始認爲我的問題還不夠清楚。我有一個自定義驗證器指令,這不是問題在這裏。問題是我不希望ng-invalid類被設置,直到另一個控件是$ valid,在這種情況下是密碼輸入控件。 – JARRRRG

+0

@Jurg你的自定義驗證器不能訪問密碼字段的有效性,只有當它有效並且當前字段不是時才返回失敗?實際上我對自定義驗證器知之甚少,但它看起來應該是可能的,我會嘗試回來一些示例代碼。 – Aaron

+0

@Jurg我也看到你在你的密碼字段上有一個自定義的驗證器,但我正在談論你的confirmPassword字段上有一個 – Aaron