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

听起来你想要的是一个显示模板。创建一个 .cshtml 视图,例如“ContactDetails.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")

布拉德威尔逊写了一篇关于模板的好博客文章,包括它们是如何解决的,在这里:

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 回答