Текстовое поле MVC только для чтения не работает - PullRequest
0 голосов
/ 26 марта 2012

Вот мой код:

<%= Html.TextBox("txtId", new { @readonly = "readonly" })%>

Но он не работает.ЗАЧЕМ?

Ответы [ 6 ]

3 голосов
/ 26 марта 2012
<%= Html.TextBox("txtId", null, new { @readonly = "readonly" })%>

Это правильный код. Второй параметр указывает значение для текстового поля.

1 голос
/ 26 марта 2012

Вам не хватает второго параметра. Какой атрибут модели вы хотите привязать к этому текстовому полю. Это должен быть второй параметр.

 <%= Html.TextBox("ID", Model.Attr, new { @readonly="readonly" })%>

Если вы не хотите связываться с вашей моделью, используйте ноль в качестве второго атрибута:

<%= Html.TextBox("ID", null, new { @readonly="readonly" })%>
1 голос
/ 26 марта 2012

Попробуйте

<%= Html.TextBox("txtId", "", new { @readonly = "readonly" })%>

(второй параметр - это значение, а третий - атрибуты HTML)

Проблема в вашем коде в том, что объект new { @readonly = "readonly" } интерпретируется как значение, отображаемое в текстовом поле

1 голос
/ 26 марта 2012

использование:

<%= Html.TextBox("txtId", new { @readonly = "true" })%>

редактирование: лучше использовать TextBox для печатной модели:

<%= Html.TextBoxFor(model => model.Id, new { @readonly = "true" })%>
0 голосов
/ 26 марта 2012

Используйте код ниже.

<%= Html.TextBox("txtId", string.Empty ,new { @readonly = "readonly" })%>
0 голосов
/ 26 марта 2012

Атрибутами должен быть 3-й параметр.

TextBox('ID', 'value', 'attributes' 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...