可能重复:
Client Id for Property (ASP.Net MVC)
在我的视图中,我使用的是jquery数据采集器。所以我需要用这样的代码启动它
$(function() {
$('#elementID').datepicker({
});
});
在我看来
<%= Html.TextBoxFor(m=>m.StartDate) %>
在旧的ASP.NET中,我可以使用
tb_startDate.ClientID
如何检索强类型ASP.NET的元素Id?是可能的吗?
发布于 2010-04-06 09:18:15
一旦文本框被呈现,就无法接收它的id (因为它只是输出纯文本)。
但是,您可以使用另一种方法来设置类并使用标准的". class -jquery选择器“。
就像这样:
<%= Html.TextBoxFor(m=>m.StartDate, new { @class = "startDate" }) %>以及:
$('input.startDate').datepicker();发布于 2011-07-07 15:03:31
你可以创建
public static class HtmlExtensions
{
public static MvcHtmlString FieldIdFor<TModel, TValue>(this HtmlHelper<TModel> html, Expression<Func<TModel, TValue>> expression)
{
string htmlFieldName = ExpressionHelper.GetExpressionText(expression);
string inputFieldId = html.ViewContext.ViewData.TemplateInfo.GetFullHtmlFieldId(htmlFieldName);
return MvcHtmlString.Create(inputFieldId);
}
} 并使用了它
$('@Html.FieldIdFor(m=>m.StartDate').datepicker();有关更多详细信息:http://www.dominicpettifer.co.uk/Blog/37/strongly-typed--label--elements-in-asp-net-mvc-2
https://stackoverflow.com/questions/2583717
复制相似问题