2011-08-19 4 views
1

은 전 모델과 같이 있습니다양식 요소의 이름을 가져 오는 데 사용할 수있는 MVC Helper Method가 있습니까? ASP.net MVC와

public class Project { 
    public string ProjectName { get; set; } 
    // SNIP ... 
} 

내보기에는 다음이 포함

@model Project 

@Html.TextBoxFor(m => m.ProjectName) 

내가 텍스트 상자 참조 일부 자바 스크립트를 작성하려합니다 :

<script type="text/javascript"> 
    $('#ProjectName').someMethod(); 
</script> 

거기에 ProjectName을 하드 코딩하지 않으려합니다. 내가 사용할 수있는 이런 일이

<script type="text/javascript"> 
    $('#@Html.NameFor(m => m.ProjectName)').someMethod(); 
</script> 

있습니까 : 이상적으로, 나는 이름이 그냥 리팩토링과 재산의 이름을 바꿀 경우에, 무엇을 얻기 위해 도우미 메서드를 사용 하시겠습니까? 나는 이것을 Editor 템플릿에 넣기를 원하기 때문에 CSS 클래스를 사용하고 싶지 않으며 모든 텍스트 상자에 대해 클래스의 모든 인스턴스에 대해 코드를 실행하지 않기를 원하기 때문입니다. 하나의 요소에 대해 실행되도록합니다.

답변

2

ASP.NET MVC Futures 어셈블리 (Microsoft.Web.Mvc)에 Html.NameFor/Html.IdFor 도우미가 있으며 NuGet을 통해 가져올 수 있으며 리터럴 문자열 속성 이름 대신 람다/식을 사용하는 것과 똑같습니다.

+0

나는 그들이 거기에 있었는지 몰랐다. – Dismissile

+0

MVC Futures 어셈블리 (Microsoft.Web.Mvc)가 MvcContrib이 아니라고 말하면서 제 답변을 수정했습니다. –

관련 문제