Возвращение представления MVC 5 с указанным через jQuery AJAX путем, не работающим - PullRequest
0 голосов
/ 29 марта 2019

Я использую вызов jQuery AJAX для MVR5 ActionResult, чтобы вернуть View. ActionResult возвращает связанный с ним вид (предположительно), но отображается страница макета, а не нужный мне вид.

Я перепробовал множество ответов на этом сайте, включая относительные URL-адреса для представления или даже какого-либо другого представления, но безуспешно

public ActionResult GetSomePartialView(string personId)
{
  IdentityUserViewModel identityUserViewModel = new IdentityUserViewModel();
  ExBool iUser = personBo.GetById(int.Parse(personId), out Person model);
  return View(model);
  //return View("~/Views/Person/EditPerson.cshtml",model);
}
$.ajax({
  type: "POST",
  url: "/Person/GetSomePartialView/",
  data: jsonModelData,
  contentType: "application/json; charset=utf-8",
  dataType: "html",
  success: function (jsReturnArgs) {
    $("#tabDetails").html(jsReturnArgs); // the HTML I returned from the controller
  },
  error: function (errorData) {
    alert("error: " + errorData);
  }
});

1 Ответ

1 голос
/ 29 марта 2019

Вы должны использовать метод PartialView вместо метода View.

return PartialView(viewName, model);

И изменить метод знака для возврата результата частичного просмотра

 public PartialViewResult GetSomePartialView(string personId)
 {
     IdentityUserViewModel identityUserViewModel = new IdentityUserViewModel();
      ExBool iUser = personBo.GetById(int.Parse(personId), out Person model);
      return PartialView("viewName",model);
 }
...