2013-01-10 4 views
0

viewmodel을 jQuery를 사용하여 호출하는 컨트롤러 액션 메소드에 전달할 수 있습니까? 현재 실행중인 모델이 비어 있습니다.jQuery를 사용하여 ViewModel을 액션에 전달

컨트롤러 :

[HttpPost] 
    public ActionResult Action(MyModel model) 
    { 
     ProcessModel(model); 

     return Json(new 
     { 
      Result = "result" 
     }); 
    } 

jQuery를 :

function Serve() { 
    $.ajax({ 
     type: "POST", 
     url: "/Controller/Action", 
     dataType: "json", 
     error: function (xhr, status, error) { 
      //Handle errors here... 
     }, 
     statusCode: { 
      404: function (content) { alert('Cannot find resource'); }, 
      505: function (content) { alert('Status code: 505'); }, 
      500: function (content) { alert('Internal server error'); } 
     }, 
     success: function (json) { 
      alert(json); 

     } 
    }); 

당신이

+2

의 속성은 무엇을 당신의 ViewModel 및 전달하려는 데이터는 무엇입니까? –

+2

네, 가능합니다. 시도해 보시지 않으시겠습니까? – phnkha

+2

'data' 매개 변수는 어디에 있습니까? – jrummell

답변

1

api.jquery.com/serialize를 사용하여 양식 데이터와 매핑 양식 값을 처리 할 기본 MVC 모델 바인더 강력하게 형식화하는 모델을 직렬화 감사드립니다.

는 강력한 형식의 HTML 도우미를 사용하여 양식 필드 중 하나를 생성 확인 또는 명명 된 모델 속성과 일치로이 긴으로 잘 작동 :

@Html.TextBoxFor(model => model.PropertyName) 

또는

<input type="text" name="Model.PropertyName" /> 
관련 문제