18

这可能有点笼统,但我想限制编辑器字段中输入的字符数。

@html.EditorFor(m=>m.id,new {@maxlength="10"})

这似乎不起作用。

4

3 回答 3

29

尝试将其更改为

@Html.TextBoxFor(m=> m.id,  new { maxlength="10" });

EditorFor 使用模板,您可以自己覆盖这些模板。我认为他们没有像这样考虑您传入的属性。TextBoxFox<> 在代码中生成它,并且应该可以正常工作。

于 2012-05-29T06:44:18.713 回答
11

我能够使用 EditorFor 并使用多个属性使其在 IE11 中工作。

@Html.EditorFor(model => model.CourseNumber, new { htmlAttributes = new { @style = "width:100px", @maxlength="10" } })
于 2015-10-21T15:52:33.573 回答
4

在 MVC3 中,这更好:

[StringLength(10, ErrorMessage = "Name cannot be longer than 10 characters.")]
public string Name { get; set; }

指定数据字段中允许的最小和最大字符长度。就像在这个https://stackoverflow.com/a/6802739/2127493

于 2015-01-03T05:51:09.843 回答