использование HTML.EditorFor для создания textarea с определенным количеством строк и столбцов
Я знаю, что вы можете использовать атрибут DataType с помощником EditorFor html, чтобы указать, что конкретное свойство объекта модели должно отображаться как многострочное поле ввода.
Что делать, если я хочу указать количество строк и столбцов, которые должна иметь текстовая область?
модели :
[DataType(DataType.MultilineText)]
public string HTMLText { get; set; }
в виде :
@Html.EditorFor(x => x.HTMLText)
желаемого результата :
<textarea id="HTMLText" rows="10" cols="40">value</textarea>
есть ли способ, чтобы генерировать такой код без использования @формат HTML.Textarea () помощник?
3 ответов
не уверен, как установить строки и cols, но вы можете изменить CSS этих текстовых областей с помощью .multi-line
класса. Этот класс добавляется в textarea при использовании EditorFor, поэтому вы можете указать ширину и высоту в этом классе, чтобы получить нужные размеры.
.multi-line { height:5em; width:5em; }
вы можете указать размер атрибутов и эквивалент символов строки и col в Razor / c# ie:
@Html.TextAreaFor(model => model.Longtext, new { htmlAttributes = new { @class = "ctrl-col2 ctrl-col1", @row = "4", @col = "30" } })
похоже, это больше не требуется на MVC 5, когда у вас есть @HTML-код.EditorFor С данных.Поле MultilineText.