我正在使用MVC。在视图中有复选框,所以我想让它只读或用户不能改变它..
这是我的观点
<tr id="pnHireSet">
<td class="adminTitle">
@Html.LabelFor(model => model.IsHireSet):
</td>
<td class="adminData">
@Html.EditorFor(model => model.IsHireSet)
//This is check box. I want set is read only....
@Html.ValidationMessageFor(model => model.IsHireSet)
</td>
</tr>
我该怎么办? Thankx。
答案 0 :(得分:14)
只需使用DisplayFor
代替EditorFor
。
如果您需要将值包含在表单提交中,您还可以添加HiddenFor
。
<td class="adminData">
@Html.DisplayFor(model => model.IsHireSet)
@Html.HiddenFor(model => model.IsHireSet)
</td>
答案 1 :(得分:2)
如果您想要显示复选框但转动复选框的控制权,那么您只需尝试
@Html.CheckBoxFor(model => model.IsActive, new { onclick = "return false" })
我不喜欢使用disable=false
,因为如果您需要服务器的复选框值,那么禁用始终发送false,或者将其视为已检查状态,这就是问题和区别。