我是 MVC 的新手,很困惑 <Input type="Checkbox">
的区别是什么? , @HTML.CheckBox
和 @HTML.CheckBoxFor
.
你能指导一下为什么为同一件事提供两个助手吗?在什么情况下应该使用哪一个?
谢谢
编辑:
添加输入 type=checkbox
最佳答案
<Input type="Checkbox">
是复选框的 HTML 标记和 @Html.CheckBox
& @HTML.CheckBoxFor
是 Razor View 引擎的 Html Helpers..
假设您的 View 模型有一个属性 Person.HadDinner
,然后通常要使模型绑定(bind)正常工作,您必须将复选框命名为 Person.HadDinner
和 ID 为 Person_HadDinner
..
您可以使用 @Html.CheckBox
像
@HTML.CheckBox("Person.HadDinner", Model.Person.HadDinner)
但如果您使用
@HTML.CheckBoxFor
, 它将是强类型的..@HTML.CheckBoxFor(x => x.Person.HadDinner)
在这两种情况下,最终输出标记将是
<input type="checkbox" id="Person_HadDinner" name="Person.HadDinner">
关于asp.net-mvc - 输入类型=Checkbox、@HTML.CheckBox 和@HTML.CheckBoxFor 的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20896254/