我爱 ASP.NET MVC,跟上发布/文档有时会很棘手,所以也许我只是没有得到一些东西......我想使用TextBoxFor() ,使用LabelFor()等等,很好,所有的魔力都发生在我身上。
但如果我创造......
<%=Html.TextBoxFor(x => x.LastName) %>
并且希望用jQuery做一些不错的事情,我如何获得创建的控件的ID?我可以添加一个CSS类并使用它来附加我的jQuery,但是对于我正在做的事情,我想要ID ...所以我可以做类似的事情:
$('#LastName').(...)
我知道我可以在这种情况下解决这个问题,然后手动破解它,但有更简洁的方法吗?
答案 0 :(得分:12)
答案 1 :(得分:7)
由于MVC4有一种内置的方法 - @Html.IdFor()。
Here is a sample使用它:
@Html.IdFor(m => m.Filters.Occurred.From)
,结果就像
Filters_Occurred_From
答案 2 :(得分:0)
作为一个兴趣点,似乎Html.Textbox()代码将生成一个id,复制以字母(a-z)开头的任何内容的控件名称。但是,如果您的“姓名”以数字开头,则根本不会打扰。
这是一个非常棒的“功能”,让我在过去一小时左右的时间里感到悲伤。
答案 3 :(得分:-1)
默认情况下,您的控件ID是您的模型绑定值,您也可以使用firebug。选择控件并默认获取控件ID。