0

テーブルの tds の内容でモデルのフィールドを埋めることは可能ですか? もちろん、javascript を使用せずに。モデルを渡して tds のコンテンツを表示および取得したい。テキストボックスのようなもの: @Html.TextBoxFor(m => m.username)

私はtdsのためにこのようなものを持っている可能性はありますか? tds の代わりに何を入れることができますか?

                    <tr class="darckTr">
                        <td>code :</td>
                        <td id="tdPobox" colspan="3">12345</td>
                        <td>Email :</td>
                        <td id="tdEmail">example@yahoo.com</td>
                    </tr>
4

1 に答える 1

0

あなたが欲しいのは表示テンプレートのようです。「ContactDetails.cshtml」などの .cshtml ビューを作成します。

@model ContactDetails

<tr class="darckTr">
    <td>code :</td>
    <td id="tdPobox" colspan="3">@Model.PoBox</td>
    <td>Email :</td>
    <td id="tdEmail">@Model.Email</td>
</tr>

部分ビューのファイル名がモデルのタイプと一致する場合、それが自動的に使用されます。それ以外の場合は、いくつかのオプションがあります。モデルのパーシャルを指定します。たとえば、次のようになります。

public class MyWrappingClass
{
    [UIHint("_ContactDetails")]
    public ContactDetails Details { get; set; }
}

そして、あなたの見解でこれを行います:

@model MyWrappingClass

@Html.DisplayFor(m => m.Details)

または、ビューでテンプレートを直接指定するだけです。

@model MyWrappingClass

@Html.DisplayFor(m => m.Details, "_ContactDetails")

Brad Wilson は、テンプレートがどのように解決されるかなど、テンプレートに関する優れたブログ投稿をここに書いています。

http://bradwilson.typepad.com/blog/2009/10/aspnet-mvc-2-templates-part-3-default-templates.html

編集

これらの値を POST で永続化したい場合は、値を含む入力要素が必要です。あなたの場合、これを行う最善の方法は、非表示フィールドを使用することです。たとえば、次のようになります。

@Html.HiddenFor(m => m.Username)
于 2013-09-16T17:01:23.237 に答える