禁用HTML.TextBoxFor()

Aja*_*.14 5 asp.net-mvc asp.net-mvc-3

Html.TextBoxFor(m => m.Student.FirstName,new {id ="FirstName",disabled ="disabled"})

我想禁用文本框,所以我使用了如上所述的禁用attr并且它工作但是在保存表单时,上面文本框中加载的值变为null.

任何机构都知道发生了什么

谢谢

Onl*_*ere 8

这是设计的.禁用的输入不会POST回服务器.

您可以使用'readonly'使输入"只读".这将使数据回发,但用户无法以传统方式编辑信息.

<input type="text" name="foo" value="Some Value" readonly="readonly" />
Run Code Online (Sandbox Code Playgroud)

请记住,人们可以使用像Firebug或Dragonfly这样的工具来编辑数据并将其发回.因此,请保持警惕并确保数据相同或更好,只需使用disabled属性即可.


小智 6

你可以在@Html.TextBoxFor 中试试这个

Html.TextBoxFor(m => m.Student.FirstName, new { id = "FirstName", ,@readonly="readonly" })
Run Code Online (Sandbox Code Playgroud)