在ASP.MVC 3中,如何指定多行EditorFor
(文本区)的列和行?我正在使用[UIHint("MultilineText")]
,但是找不到任何关于如何为文本区域添加属性的文档。
所需的HTML:
<textarea cols="40" rows="10"></textarea>
我的MVC 3模型的相关部分:
[UIHint("MultilineText")]
public string Description { get; set; }
我的Razor cshtml的相关部分:
<div class="editor-field">
@Html.EditorFor(model => model.Description)
</div>
我在View Source中得到了什么:
<div class="editor-field">
<textarea class="text-box multi-line" id="Description" name="Description"></textarea>
</div>
如何设置行和列?
发布于 2011-06-03 01:32:42
使用TextAreaFor
@Html.TextAreaFor(model => model.Description, new { @class = "whatever-class", @cols = 80, @rows = 10 })
或者对multi-line
类使用样式。
您也可以为此编写EditorTemplate。
发布于 2015-10-22 15:37:29
我相信这个也可以用得更少(但我使用的是MVC5)
@Html.Description(model => model.Story, 20, 50, new { })
发布于 2011-06-03 01:30:16
一种选择似乎是使用CSS来设置文本区域的样式
.multi-line { height:5em; width:5em; }
Amurra的公认答案似乎暗示着在使用EditorFor时会自动添加这个类,但您必须验证这一点。
编辑:已确认,确实如此。所以,是的,如果你想使用EditorFor,使用这种CSS样式可以实现你想要的效果。
<textarea class="text-box multi-line" id="StoreSearchCriteria_Location" name="StoreSearchCriteria.Location">
https://stackoverflow.com/questions/6217908
复制相似问题