2009-06-17 128 views
1

我使用ASP.NET MVC助手這樣創建一個下拉列表中的默認值爲空,ASP.NET MVC如何處理下拉列表

<%=Html.DropDownList("Group","-please select a group-")%> 

,我得到這樣的HTML,

<label for="GroupId">Group:</label> 
<select id="GroupId" name="GroupId"><option value="">-please select a group-</option> 
<option value="15">Business</option> 
<option value="16">Friends</option> 
<option value="17">Others</option> 
</select> 

默認選項是「 - 請選擇組羣」 - 該值爲空。

如何驗證選擇值以查看它是否爲空? 我的意思是如果用戶不選擇一個組,我怎麼能知道它並給用戶一個錯誤信息。 現在,代碼僅顯示異常錯誤,因爲默認選項的值爲空。

回答

2

Action中組的值將爲0. 您可以測試Group是否爲零並調用ModelState.AddModelError。 這將是更好,如果有可能明確設置在下拉列表中默認項的值,但是這是不可能的Html.DropDownList

無論如何,我使用過載:

由於您在模型中有一個用於組列表的屬性,而且一個用於所選組的密鑰。如果我使用

然後ModelState.IsValid始終是我的不實。

+0

嗨,謝謝你的回答。但我無法測試組是否爲零。你如何做到這一點? – Smallville 2009-06-17 12:31:15