10
說我有一個枚舉:MVC 5 RadioButtonFor枚舉,默認的枚舉值零總是被選中?
public enum OrderStatusType
{
Waiting = 0,
Pending,
Picked,
Shipped,
}
我生成的無線電按鈕列表如下。
@Html.RadioButtonFor(m => m.Status, OrderStatusType.Shipped, new {@checked = true})
@Html.RadioButtonFor(m => m.Status, OrderStatusType.Waiting)
但等待總是被選中。輸出HTML如下:
input type="radio" value="Shipped" name="Status" id="Status" checked="True"
input type="radio" value="Waiting" name="Status" id="Status" checked="checked"
爲什麼MVC框架會自動添加「checked」屬性? 謝謝。
型號:
public class OrderViewModel
{
public OrderStatusType Status { get; set; }
}
的觀點:(!這是怎麼綁定工作)來選擇,因爲你的財產Status
的值是OrderStausType.Waiting
@using WebApplication17.Controllers
@model WebApplication17.Models.OrderViewModel
@{
ViewBag.Title = "Home Page";
}
@Html.RadioButtonFor(m => m.Status, OrderStatusType.Picked)
<span>@OrderStatusType.Picked</span>
@Html.RadioButtonFor(m=>m.Status, OrderStatusType.Pending)
<span>@OrderStatusType.Pending</span>
@Html.RadioButtonFor(m => m.Status, OrderStatusType.Shipped, new {@checked = true})
<span>@OrderStatusType.Shipped</span>
@Html.RadioButtonFor(m => m.Status, OrderStatusType.Waiting)
<span>@OrderStatusType.Waiting</span>