【问题标题】:How can I display the client ID of a model property into a view?如何将模型属性的客户端 ID 显示到视图中?
【发布时间】:2013-07-18 17:53:11
【问题描述】:

在我看来,我希望能够独立于关联的控件标记呈现模型属性的 ID。

例如,如果我的模型是:

public class Author {
    public string Title { get; set; }
    public Address Address { get; set; }
}

在我看来,我希望能够使用 HtmlHelper 的扩展来使用 lambda 呈现 Title 属性的 ID。比如:

@Html.GetClientIdFor(x => x.Title)

这将输出“标题”。

对于嵌套对象,我想:

@Html.GetClientIdFor(x => x.Address.PostCode)

输出“Address_PostCode”。

我确定我可以从 ViewData.TemplateInfo 对象访问数据,但从那里我有点卡住了。

有什么想法吗?我正在使用 MVC4,但我想要一个也适用于 MVC3 的解决方案。

【问题讨论】:

    标签: c# asp.net-mvc razor


    【解决方案1】:

    除非我误解了您的问题,否则有一个 HtmlHelper 可以满足您的要求:IdFor

    @Html.IdFor(x => x.Address.PostCode) // Will return Address_PostCode
    

    不过,这适用于 MVC4 及更高版本。对于 MVC3,你需要自己动手。见this SO

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-29
      • 2011-03-05
      • 2014-11-24
      相关资源
      最近更新 更多