0

我正在 MVC 4 中开发,我想要一个只读文本框。我决定使用@Html.DisplayFor 但我不能让它显示在客户端?

<div class="editor-label">
    @Html.LabelFor(model => model.GoodsModel.SerialNumber) <label id ="VGoodsSerialNumber" style="color: #FF0000;"/>
</div>
<div class="editor-field">
    @Html.DisplayFor(model => model.GoodsModel.SerialNumber)
    @*@Html.EditorFor(model => model.GoodsModel.SerialNumber, new { disabled = "disabled", @readonly = "readonly" })*@
</div>

那我跑的时候找不到?

在此处输入图像描述

4

1 回答 1

2

Html.EditorFor 没有 htmlAttributes 参数。如果要传递 html 属性,则需要使用 Html.TextBoxFor:

@Html.TextBoxFor(model => model.GoodsModel.SerialNumber, new { @readonly = "readonly" })

此外,使用禁用或只读。当输入被禁用时,它的值在提交表单时不会被发送到服务器。只读输入仍将发布,但用户无法更改其值。

于 2013-06-28T14:39:40.353 回答