2011-08-31 60 views
2

場景:用戶應填寫表單並根據他的選擇顯示不同的屬性(使用jQuery .show和.hide)。 問題:我想要一些顯示爲必需的屬性(但僅當它們顯示爲ofc時)。如果顯示屬性,[必需]屬性不在意。因此,如果我使用[必填],則會要求用戶填寫他無法看到的屬性。 解決方案:?如何在mvc中隱藏的屬性上使用必需的屬性

回答

4

您可以使用RequiredIf attribute執行條件的驗證:

[RequiredIf("HiddenFoo", "true", ErrorMessage = "Foo is required")] 
public string Foo { get; set; } 

public string HiddenFoo { get; set; } 

現在,添加一個隱藏字段名爲HiddenFoo然後切換它的價值時,你是顯示/隱藏Foo文本框。僅當HiddenFoo="true"時才需要Foo

+0

完美!像魅力一樣工作,thanx :) – Arnstein