2009-04-10 7 views
1

와 나는 모델 즉, 입력으로 강력한 형식의 모델 객체를 받아 바인딩을 사용하는 ASP.NET MVC 액션 메소드가 있습니다비동기 요청은 모델 바인딩하는 액션 메소드를 JQuery와

public PartialViewResult SaveUser([Bind(Prefix = "User")]User NewUser) 
{ 
} 

내가 어떻게 지정합니까를 이 메소드를 JQuery와 비동기 적으로 요청할 때의 인수? 이전에 load() 또는 post() 메서드를 사용하여 비동기 요청을 한 적이 있지만이 중 하나 또는 두 개의 명명 된 매개 변수 만있었습니다. 비동기 요청이있는 양식 데이터 전체를이 메서드에 전달하려면 어떻게해야합니까?

$.post('/Users/SaveUser/', { NewUser: $('#theForm') }, function(responseText, status) { 
    $('#mainContent').text(responseText); 
}, 'html'); 

나는 액션 메소드에 중단 점을 추가하고 NEWUSER 매개 변수가 null :

내가 시도 하나의 방법입니다.

이 방법으로 완전히 벗어 났습니까? 어떤 도움이라도 대단히 감사합니다.

감사합니다.

답변

1

입력 이름과 값 사이의 매핑을 만들어야합니다. 모델 바인더는 요청시 양식 매개 변수로

User.Name=username 
User.FirstName=Bill 
User.LastName=Gates 
... 

을 볼 것으로 예상됩니다. serialize 방법을 사용해보십시오.

$('form').serialize() 

AJAX 호출에 대한 매개 변수를 구성하십시오.

+0

이것은 대우를 받았습니다. 고마워요! 나는 serialize 메서드에 대해 전혀 알지 못했다. –

관련 문제