我有以下课程:
public class City {
public string Name { get; set; }
public bool CityValid { get; set; }
}
我知道如何设置名称,但如何设置 CityValid 字段,使其类似于复选框。我想在不使用 HTML 帮助器的情况下做到这一点。
我有以下课程:
public class City {
public string Name { get; set; }
public bool CityValid { get; set; }
}
我知道如何设置名称,但如何设置 CityValid 字段,使其类似于复选框。我想在不使用 HTML 帮助器的情况下做到这一点。
如果您真的不想使用帮助程序,您可以使用普通的 HTML 输入标记:
<input type="checkbox" id="CityValid" name="CityValid" value="@Model.CityValid" />
<input type="hidden" id="CityValue_Hidden" name="CityValid" value="false" />
name 属性必须与您的属性名称相匹配,以便模型绑定器在您回发到服务器时正确拾取它。
当您使用助手时,将生成类似于上述标记的内容。隐藏字段在那里,因此无论您是否选中该框,始终都会发送一个值与表单发布数据一起发送(如果您未选中该框,则默认情况下不会发送任何值,甚至不会发送“假”)。
但是,除非您正在做一些非常奇怪的事情,否则我建议您坚持使用帮助程序。任何一个:
@Html.CheckboxFor(m => m.CityValid)
或者
@Html.EditorFor(m => m.CityValid)
在您看来,您可以使用EditorFor
帮助程序:
@model City
...
@Html.EditorFor(x => x.CityValid)
布尔字段的默认编辑器模板会生成一个复选框。
您可以首先使用 HTML 助手创建它,查看运行页面时创建的标记,然后重新创建该标记...