Настройка видимости текстового поля в движке MVC3 Razor - PullRequest
7 голосов
/ 28 июня 2011

Я новичок в MVC 3, двигатель с бритвой. Я хочу установить видимость текстового поля во время выполнения согласно значению в моей модели представления.

Но приведенный ниже код не работает.

<td>
    @Html.TextBox("CompanyName", "", new { visible = "false" })
</td>

Как только приведенный выше код начинает работать, я могу поместить @Model.EnableCompanyName вместо жестко закодированного "ложного".

Поэтому, пожалуйста, помогите мне исправить вышеуказанный код.

Ответы [ 4 ]

14 голосов
/ 28 июня 2011

Это изменит тип отображения в зависимости от вашего bool Model.EnableCompanyName:)

Надеюсь, это поможет!

@{
String displayMode = (Model.EnableCompanyName) ? "inline" : "none";
@Html.TextBox("CompanyName", "", new { style = "display:" + displayMode + ";" })
}
8 голосов
/ 28 июня 2011

Это никак не связано с бритвой как таковой.visible не является допустимым атрибутом для элемента input (который будет генерировать Html.TextBox).Вам нужно

@Html.TextBox("CompanyName", "", new { style = "display:none;" })

Смотрите пример здесь:

http://jsfiddle.net/QxSpU/

2 голосов
/ 28 июня 2011

(отредактировано)

@Html.TextBox("CompanyName", "", new { style = Model.EnableCompanyName ? "display:inline" : "display:none" })

0 голосов
/ 04 августа 2011

Добавить @ Html.TextBox ("CompanyName", "", new {Style = Model.EnableCompanyName? "Visibility: visible": "visibility: hidden"})

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