Укажите размер и максимальную длину для Html.TextBoxFor
Мне нужно изменить размер текстового поля:
@Html.SimpleTextBoxFor(m => ((ModifiableProperty<string>)m).Value.TheCurrentValue, new { id = fieldId})
Я пробовал это
@Html.SimpleTextBoxFor(m => ((ModifiableProperty<string>)m).Value.TheCurrentValue, new { id = fieldId, @maxlength = "100" })
но не работает.
Ответы
Ответ 1
Вы также можете попробовать:
@Html.SimpleTextBoxFor(m => ((ModifiableProperty<string>)m).Value.TheCurrentValue, new { id = fieldId, style ="width:200px"})
Просто измените значение 200px для нужного размера.
Для maxlength я использую тот же синтаксис, что и вы, и он работает для меня.
@Html.TextBoxFor(model => model.EL_Taille_Initiale, new { style = "width:50px", @maxlength = "5" })
Ответ 2
Выньте символ "@"
для вашего атрибута maxlength
. Вам это нужно только для зарезервированных ключевых слов (т.е. class
). Кроме того, вам не нужны кавычки вокруг номера для maxlength
.
@Html.SimpleTextBoxFor(m => ((ModifiableProperty<string>)m).Value.TheCurrentValue, new { id = fieldId, maxlength = 100 })
Если это не решит проблему, то, пожалуйста, напишите, какая разметка HTML создается на странице ответа.
Ответ 3
Я использую конструктор для моего TextBox, который не позволяет передавать атрибуты HTML, поэтому мне пришлось добавить это в мою функцию $(document).ready
: $('#textBoxID').attr('maxlength', 30);
Не отвечает непосредственно на вопрос OP, но предлагает альтернативную отправную точку.