我正在使用MVC3的Razor引擎来生成视图,并使用以下代码行生成文本框
@Html.EditorFor(model => model.AddressLine1)
在相关模型中,我使用数据注释属性将可接受字符数限制为55:
[StringLength(55)] public string AddressLine1 { get; set; }
但是,这允许用户输入更长的地址,然后在尝试提交表单时通过验证消息告知.如何将文本框限制为55个字符,以便用户无法输入更多内容?
如果我自己生成文本框,我会使用maxlength属性作为输入类型,但我不确定如何使用Html.EditFor方法获得相同的结果.
解决方法
使用maxlength和TextBoxFor而不是EditorFor
EditorFor没有允许这样做的重载.
这对你来说可能更有趣:
maxlength attribute of a text box from the DataAnnotations StringLength in Asp.Net MVC