1
如何使用MVC 2內置驗證系統實現選擇性客戶端驗證
?
假設我的表單標題中有一個複選框「您有孩子嗎?」
,如果選中,則應該要求它下面的文本框
(標題爲「兒童人數」的文本框)。ASP.NET MVC中的選擇性客戶端驗證
如何使用MVC 2內置驗證系統實現選擇性客戶端驗證
?
假設我的表單標題中有一個複選框「您有孩子嗎?」
,如果選中,則應該要求它下面的文本框
(標題爲「兒童人數」的文本框)。ASP.NET MVC中的選擇性客戶端驗證
一些可能讓你在這裏思考的選項。在多個帖子操作的情況下(例如點擊表單上的取消按鈕不應該啓動驗證)我已經確保表單只發佈一個操作,其他任何操作都基本上是一個樣式化的鏈接。在這種情況下,驗證不會觸發。
如果您的情況與您的情況一樣複雜,我建議您創建一個自定義驗證器並註冊一個客戶端適配器,例如
[RequiredIfHasChildren]
所以你會寫一個自定義驗證屬性,自定義模型驗證和一些JavaScript代碼來註冊一個新的客戶端驗證。這種方法在過去對我來說很有效,但對另一個模型屬性的依賴可能會有點問題。
希望這會有所幫助。
這也適用於更常見的場景,例如在表單上有一個取消按鈕 - 顯然你不想驗證然後觸發。 – 2010-04-09 13:10:33