2013-06-26 1 views
0

컨트롤러에서 객체 목록을 가져 와서 ajax를 사용하여 뷰로 전달하고 싶습니다. 내 컨트롤러의 가져 오기 작업의 코드는 다음과 같습니다asp.net mvc에서 ajax를 사용하여 컨트롤러에서 객체 목록을 검색하는 방법

 public ActionResult Get() 
     { 
      Home h = new Home(); 
      return View(h.get()); 
     } 

h.get은() 내가보기에 기록 된 Ajax 호출로 다시 보낼 목록을 반환합니다. Ajax 전화 :

<script type="text/javascript"> 
     $.ajax({ 
      type: "GET", 
      url: '@Url.Action("Get","Home")', 
     }).done(function (msg) { 
      alert(msg); 
     }); 
</script> 

컨트롤러에서보기로 데이터를 전송하려면 어떻게해야합니까? 이 문제에 도움이 필요합니다. 미리 감사드립니다.

답변

2

데이터를 JSON으로 반환해야합니다.

public ActionResult Get() 
     { 
      Home h = new Home(); 
      return Json(h.get(), JsonRequestBehavior.AllowGet); 
     } 
+0

가 나는 사업부에로드 할 수 이 오류가 발생합니다 "JSON '이름이 현재 컨텍스트에 존재합니다." System.Web.Helpers를 추가했지만 작동하지 않습니다. –

+0

@HammadShahid가 대소 문자를 변경합니다. JSON이 아닙니다. JSON이 아닙니다. – scartag

0

이 경우 다시보기가 전송됩니다. JSON을 반환해야합니다.

return Json(result, "text/html", System.Text.Encoding.UTF8, JsonRequestBehavior.AllowGet); 

또는 당신이 그것을에 부착 된 모델과 뷰를 반환 할 경우 당신은

return PartialView("Name", model); 

및보기에 당신이

$.ajax({ 
      type: "GET", 
      url: '@Url.Action("Get","Home")', 
     }).done(function (msg) { 
      $("#div-id").html(msg); 
     }); 
관련 문제