2008-12-05 88 views
2

我正在構建一個需要驗證的表單的ASP.NET MVC應用程序。大部分表單是靜態的,但表單的一部分是動態的。我需要啓用用戶輸入n個字符串/日期組合。Asp.net MVC驗證動態表單

字符串/日期組合需要驗證服務器端,我需要直接在驗證失敗的組合旁邊給用戶提供反饋。

對於靜態輸入我做了以下內容:

<%= Html.ValidationMessage("someField") %> 

對於動態數據,我該怎麼辦?

+0

表單生成客戶端或服務器端的動態部分? – 2008-12-05 22:23:29

回答

3

在你的控制器,你會希望將錯誤分配給未通過驗證的特定字段:

ModelState.AddModelError ("textbox1", "You must specify a valid string."); 
ModelState.AddModelError ("combobox1", "You must specify a valid date."); 

然後所有的助手真的是做的,如果下面存在被檢查:

ViewData.ModelState.ContainsKey("textbox1") 

然後創建一個標籤,如下所示

<span><%= ViewData.ModelState.ContainsKey("textbox1").Errors[0] %></span> 

該幫手做了一個多一點的空值檢查,但你明白了。