Как получить список объектов из контроллера, используя ajax в asp.net mvc
Я хочу получить список объектов из контроллера и передать его в представление с помощью ajax. Код действия Get моего контроллера:
public ActionResult Get()
{
Home h = new Home();
return View(h.get());
}
h.get () возвращает список, который я хочу отправить обратно на вызов ajax, написанный в представлении. Ajax Call:
<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);
}
Вы отправляете представление обратно в этом случае. Вы должны вернуть JSON.
return Json(result, "text/html", System.Text.Encoding.UTF8, JsonRequestBehavior.AllowGet);
Или, если вы хотите вернуть вид с прикрепленной к нему моделью, вы можете сделать
return PartialView("Name", model);
и на стороне просмотра вы загружаете его в DIV
$.ajax({
type: "GET",
url: '@Url.Action("Get","Home")',
}).done(function (msg) {
$("#div-id").html(msg);
});