[英]MVC5 radiobutton value error
我對MVC開始從網絡表單遷移有點新,所以請耐心等待。
我有一個性別定義為的單選按鈕組;
<div class="form-group">
@Html.LabelFor(m => m.Gender, new { @class = "col-xs-3 control-label" })
<div class="col-xs-5">
<div class="radio">
<label>
@Html.RadioButtonFor(m => m.Gender, new { @class = "form-control", value= Gender.Male})<span>Male</span>
@*<input type="radio" name="gender" value="male"/> Male*@
</label>
</div>
<div class="radio">
<label>
@Html.RadioButtonFor(m => m.Gender, new { @class = "form-control", value = Gender.Female }) <span>Female</span >
@*<input type="radio" name="gender" value="female"/> Female*@
</label>
</div>
</div>
</div>
Gender是另一個項目中定義的枚舉,但viewmodel類使用該枚舉。
[Required]
[Display(Name = "Gender")]
public DomainClasses.Enums.Gender Gender { get; set; }
無論我似乎試圖做到這一點,我得到以下驗證錯誤。
值'{class = form-control,value = Male}'對於Gender不起作用。
更新:
提交之前的原始外觀是
但是在改用建議的方法后,為什么現在看起來呢?
看看這張圖片
這個圖像顯示,接受第二個參數作為Html屬性沒有重載 ,所以你需要這樣寫:
<div class="form-group">
@Html.LabelFor(m => m.Gender, new { @class = "col-xs-3 control-label" })
<div class="col-xs-5">
<div class="radio">
<label>
@Html.RadioButtonFor(m => m.Gender, Gender.Male , new { @class = "form-control" })<span>Male</span>
@*<input type="radio" name="gender" value="male"/> Male*@
</label>
</div>
<div class="radio">
<label>
@Html.RadioButtonFor(m => m.Gender, Gender.Female, new { @class = "form-control" }) <span>Female</span >
@*<input type="radio" name="gender" value="female"/> Female*@
</label>
</div>
</div>
</div>
在此重載中,您將第二個參數作為RadioButton的值傳遞
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.