如何创建只读复选框MVC?

时间:2012-10-22 04:04:36

标签: c# asp.net-mvc

我正在使用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。

2 个答案:

答案 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,或者将其视为已检查状态,这就是问题和区别。