2015-01-02 4 views
0

Angular directives을 ASP.NET MVC C#에 Html Helper에 포함시키는 방법. 나는 그것을 포함시키는 방법을 모른다. 내가 무슨 짓을 은 다음과 같다 :Html 도우미의 각도 명령

@Html.EditorFor(model => model.Questions.Question , new{ng_model="quest"}) 
        {{quest}} 

을하지만 소스 코드를 볼 때 그 ng-model directive을하지 않는 이유는 무엇입니까?

답변

2

Html.EditorFor의 두 번째 인수는 확장 된 ViewData입니다. 템플릿에 사용됩니다. Default 템플리트는 추가 항목을 사용하지 않습니다. 그러나 지원 htmlAttributes

@Html.EditorFor(model => model.Questions.Question , new { htmlAttributes = new { ng_model="quest" }}) 

또는 두 번째로 널 매개 변수를 전달해야 HTML을 도우미 각도 지시를 포함

@Html.TextBoxFor(model => model.Questions.Question, new { ng_model = "quest" }) 
+0

htmlAttributes 옵션을 추가 한 솔루션이 작동하지 않았습니다. 템플릿 제거에 대한 두 번째 아이디어를 사용하면 _ng-model_ 지시어가 표시됩니다. 어떤 아이디어? – Oscar

+0

EditorFor의 첫 번째 메서드는 additionalViewData 인수에 htmlAttributes를 제공합니다. u가 사용자 정의 EditorFor 템플릿을 사용하는 경우 다음 호출/템플릿에 htmlAttributes를 다시 전달해야합니다. @ Html.TextBox ("", Model.Value, ViewData [ "htmlAttributes"])와 같은 사용자 정의 편집기 템플릿에서 –

0

모든 템플릿에서 함께 렌더링은 객체의 각 지시어를 통과 .

@Html.DropDownList("ViewBag-Name", null, new { ng_model = "Model-Name"}) 

여기서 ViewBag-Name에는 컨트롤러의보기로 전달되는 SelectList 개체가 있습니다.

0

아주 쉽게 할 수 있습니다.

 
    @Html.EditorFor(model => model.Email, new { htmlAttributes = new { @ng_change = "call()" ,@class="form-control" }}) 
+1

답변과 직접 관련이있는 경우에만 귀하의 웹 사이트로 연결하고 귀하의 * 웹 사이트임을 명시하십시오. 그렇지 않으면 스팸으로 간주됩니다. – Glorfindel

+0

@Glorfindel 아마도이 토론을 메타에서 읽을 수 있습니다. http://meta.stackoverflow.com/questions/342356/what-can-we-do-to-police-abuse-when-moderators-are-unavailable – Steve

+0

@Steve Erm? 그 논의는 롤백 전쟁에 관한 것입니까? ** ** 답변 **과 관련이 있습니까? – DavidPostill