Nat*_*Pet 0 c# razor asp.net-mvc-3
我有一个名为W2_Sent的字段,定义为(bit,null)
在我看来,我有以下内容,将其显示为一个复选框:
<div class="editor-label" style="width: 10em">
@Html.Label("W2 Sent")
</div>
<div class="editor-field">
@Html.EditorFor(model => model.W2_Sent)
@Html.ValidationMessageFor(model => model.W2_Sent)
</div>
Run Code Online (Sandbox Code Playgroud)
如果我检查它,我收到一个错误
值'checked'对W2_Sent无效
[HttpPost]
public ActionResult Create(Employee emp)
{
foreach (ModelState modelState in ViewData.ModelState.Values)
{
foreach (ModelError error in modelState.Errors)
{
string s = "error";
}
}
Run Code Online (Sandbox Code Playgroud)
我能够在上面看到的foreach循环中捕获错误..
为什么我得到的值"已检查"无效
VJA*_*JAI 12
要在表单中显示复选框,您应该始终使用@Html.CheckBox/CheckBoxFor而不是<input type="checkbox" name="gender" />.当您使用@Html.CheckBox/CheckBoxForASP.NET时,MVC会生成一个隐藏字段,该字段具有布尔值,并且将绑定到您的模型属性.
当你直接使用html部分时,浏览器会将字段的值发布为字符串"checked"(如果是),并在模型绑定中抛出错误.
| 归档时间: |
|
| 查看次数: |
8306 次 |
| 最近记录: |