2009-10-19 3 views
0

에서이 ActionMethod의 라인을 따라 뭔가를 생성 한 통과 찾지 못하는. 나는처럼 JQuery.Post 기능을 사용하여 내 자바 스크립트에서 위의 ActionMethod 전화 :MVC ActionMethod 나는 값

var journeyData = { 
    CustomerID: $('#CustomerID').val(), 
    JourneyID: $('#JourneyID').val(), 
    EstimatedTravelTime: $('#EstimatedTravelTime').val(), 
    RouteName: $('#RouteName').val(), 
    ..... 
}; 

$.post('/Journey/Create', 
    journeyData, 
    function(jsonResult) { 
    //deal with result 
    }, 
    'json' 
); 

오전 데 문제는 ActionMethod Journey.RouteName에 항상 널 (null)하지만 난 다시 전달하는 JSON을 반환하는 것입니다 값이있는 경우

이며 결과 JSON 객체 RouteName에 값이 있습니다. 예 : '일하러 가다'. 이것이 ActionMethod에서 설정되지 않는 이유는 무엇입니까? 내가 거절 한 다른 모든 값은 잘 설정되어 있습니다.

답변

2

그냥 시도 및 오류 제안 : 내가 시도 할 것

우선은 "RouteName"로, somethign 다른과 "RouteName"PARAM 이름을 변경하는 것입니다 일부 MVC의 속성입니다 -redirect methods ..

+0

이것은 나에게 들릴 것 같다. – JonoW

0

서버로 전송되는 요청 JSON 개체를 검사 해 보셨습니까?
문자열 속성 값에 따옴표를 추가해 보았습니까? 이처럼
:

var journeyData = { 
    CustomerID: $('#CustomerID').val(), 
    JourneyID: $('#JourneyID').val(), 
    EstimatedTravelTime: $('#EstimatedTravelTime').val(), 
    RouteName: '"' + $('#RouteName').val() + '"', 
    ..... 
}; 
+0

안녕하세요, 귀하의 제안을 시도했지만 여전히 null로 되돌아갑니다. 그것은 문자열 tho, 나머지는 bool, int 또는 DateTime ...은 문자열과 관련된 다른 것이 될 수있는 유일한 값입니까? – Fermin

+0

그리고 첫 번째 질문에 답하기 위해 journeyData 변수를 서버로 보내기 전에 JSON.stringify (journeyData)를 사용하여 보내지는 것을 확인한 후 실제로 보내지는 것이 무엇인지 검사하는 다른 방법이 있습니까? – Fermin

+0

Firebug의 Net 패널 또는 Fiddler가 표시합니다. –

0

몇 가지 고려해야 할 사항이 있습니다. 이 위치가 이미 설정되어있는 것으로 추측하고 있지만 모델에 제대로 바인딩 되려면 RouteName 속성에 getter 및 setter가 있어야합니다. 또 다른 생각은 당신이 강한 결속력을 세우지 못했을 것입니다. 이는 일반적으로보기의 페이지 선언 (예 : Inherits = "System.Web.Mvc.ViewPage")의 일부로 수행되지만 게시 전에이 문제가 발생하는지 확신 할 수 없습니다.

관련 문제