引用使用TextBoxFor()创建的控件ID

Col*_*ith 7 asp.net-mvc-2

喜欢 ASP.NET MVC,跟上发布/文档有时会很棘手,所以也许我只是没有得到一些东西......我想使用TextBoxFor(),并使用LabelFor()等是很好,所有的魔法都发生在我身上.

但如果我创造......

 <%=Html.TextBoxFor(x => x.LastName) %>
Run Code Online (Sandbox Code Playgroud)

并且想用jQuery做一些不错的事情,我如何获得创建的控件的ID?我可以添加一个CSS类并使用它来附加我的jQuery,但是对于我正在做的事情,我想要ID ...所以我可以做类似的事情:

 $('#LastName').(...)
Run Code Online (Sandbox Code Playgroud)

我知道我可以在这种情况下解决它,并手动破解它,但是有更简洁的方法吗?

bru*_*nde 12

我想你可以这样做:

<%=Html.TextBoxFor(x => x.LastName, new { id = "LastName" })%>
Run Code Online (Sandbox Code Playgroud)

TextBoxFor的重载


Ale*_*aus 7

由于MVC4有一种内置的方法 - @ Html.IdFor().

以下是使用它的示例:

@Html.IdFor(m => m.Filters.Occurred.From)
Run Code Online (Sandbox Code Playgroud)

结果就像

Filters_Occurred_From
Run Code Online (Sandbox Code Playgroud)