2014-02-14 1 views
1

컨트롤러에 ajax를 게시하여 모든 것이 좋으며 컨트롤러 내부의 데이터를 볼 수 있습니다.MVC 4 ajax를 사용하는보기에서 컨트롤러의 데이터를 읽습니다.

$.ajax({ 
    type: "POST", 
    url: "./Enroll/saveTempSelectedPlan", 
content: "application/json; charset=utf-8", 
    data: ({tempSelectedPlan: plan, tempSelectedTier: tier}), 
success: function() {alert("SUCCESS");}, 
    error: function() {alert("FAIL");} 
}); 

및 컨트롤러 내부 이것이 내가 데이터를 읽는 방법은 다음과 같습니다 : 지금은 다음과 같이 다시보기 밖으로 데이터를 게시하려고

public JsonResult saveTempSelectedPlan(string tempSelectedPlan, string tempSelectedTier) 
{ 
    Session["TemporarySelectedPlanNumber"] = tempSelectedPlan; 
    Session["TemporarySelectedTierNumber"] = tempSelectedTier; 
    return Json("SUCCESS"); 
} 

:이 내가 무슨 짓을

public JsonResult loadTempSelectedPlan() 
{ 
    if (Session["TemporarySelectedPlanNumber"] != null && Session["TemporarySelectedTierNumber"] != null) 
    { 
     return Json(new { 
     tempSelectedPlan = this.HttpContext.Session["TemporarySelectedPlanNumber"].ToString(), 
     tempSelectedTier = this.HttpContext.Session["TemporarySelectedTierNumber"].ToString() 
    }); 
} 

return Json("SUCCESS"); 

은}

내 질문은 아마 것 (I 데이터 다시보기에서 나는 또 다른 게시물을 작성 않는다는 것을 읽을 수있는 방법입니다 GET해라.) 보기에서 데이터를 다시 읽으려면 어떻게해야합니까? 또한 어떤 개선이 높게 평가 될 경우에!

감사합니다.

답변

1

첫 번째는 반환 값입니다. 인수로 넘겨받은 값이 Json(arg)으로 직렬화됩니다. 직렬화 된 arg는 JSON 형식이 될 것입니다.

여러분의 성공 기능은 항상 브라우저의 dev에 콘솔에서 응답 헤더를 검사 할 수 있습니다

success: function(data) {console.log(data);}, //now you can examine it 

이 또한 염두에 두어야 매개 변수로이 주입됩니다. 반환 된 json도 거기에있을 것입니다.

관련 문제