web-dev-qa-db-ja.com

MVC3Razorビューエンジンでテキストボックスの可視性を設定する

私はMVC3、レイザービューエンジンを初めて使用します。ビューモデルの値に従って、実行時にテキストボックスの可視性を設定したいと思います。

しかし、以下のコードは機能していません。

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

上記のコードが機能し始めたら、ハードコードされた「false」の代わりに@Model.EnableCompanyNameを配置できます。

したがって、上記のコードを修正するのを手伝ってください。

7
Biki

これにより、boolModel.EnableCompanyNameに基づいて表示タイプが変更されます:)

それが役に立てば幸い!

@{
String displayMode = (Model.EnableCompanyName) ? "inline" : "none";
@Html.TextBox("CompanyName", "", new { style = "display:" + displayMode + ";" })
}
15
Chris

それ自体はかみそりとは何の関係もありません。 visibleinput要素の有効な属性ではありません(これはHtml.TextBoxが生成するものです)。あなたが必要です

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

ここでこの例を参照してください:

http://jsfiddle.net/QxSpU/

8
DavidGouge

(編集済み)

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

2
Yuriy Naydenov

@ Html.TextBox( "CompanyName"、 ""、new {Style = Model.EnableCompanyName? "visibility:visible": "visibility:hidden"})を追加します

0
Ashes