2012-10-27 5 views

답변

3

컨트롤러의 작업 (그들 중 하나)가 제공하는 뷰 모델을 설정하는 것입니다 올바르게 렌더링하기에 충분한 정보를보십시오. 즉, 컨트롤러와 뷰는 느슨하게 결합되어야합니다.

여기에 한 가지 방법이 있습니다. 이것은 좀 더 우아하게 할 수 있지만 다소 분리되어 있습니다. 클라이언트 측 스크립팅을 수행하는 데 여전히 JavaScript가 필요하지만 뷰 모델의 값을 기반으로 스크립트가 생성됩니다.

컨트롤러

public ActionResult Foo(){ 

    var model = new MyViewModel(); 
    model.SelectedItem = "FirstName"; 

    return View(model); 
} 

보기

@model MyViewModel 

@Html.TextBoxFor(o => o.FirstName) 

@if(Model.SelectedItem != default(string)){ 
    <script>$("#@(Model.SelectedItem)").focus();</script> 
} 
3

한 가지 서버에 세상의 모든 기술을 가지고 있지만에서 할 수 있다는 것입니다 당신은 웹 개발에 대해 배울 수있다 결국, 그 기술은 Html, CSS 및 JavaScript 표준을 생성해야합니다.

즉, 서버에서 클라이언트에서 자동으로 수행 할 수있는 특별한 마법이 없음을 의미합니다. 일부 프레임 워크는 자동으로 코드를 생성 할 수 있지만 나중에 표준 HTML/CSS/JS로 처리해야합니다.

MVC는 표준 일반 HTML 만 렌더링합니다. 웹폼은 많은 것을 할 것입니다.하지만 결국 웹폼은 표준 HTML을 생성해야합니다. 이것은로드시 초점을 설정하는 페이지에 포함 된 javacript를 자동 생성하여이를 수행합니다.

MVC는 이러한 작업을 수행하지 않으므로 기본적으로 동일한 작업을 수행해야하지만 MVC를 작성해야합니다. 간단한 jquery를 사용하면 비교적 간단합니다.