Браузер не отображает полученный html

#asp.net-mvc #browser #rendering

#asp.net-mvc #браузер #рендеринг

Вопрос:

У меня очень странная проблема, я пытаюсь отобразить частичный вид с моделью на моей странице.Мое действие контроллера отправляет html в браузер (FireBug показывает мне желаемый HTML-ответ с сервера), но браузер не отображает его! скриншот вывода firebug _ViewStart.cshtml

 @{
    Layout = "~/Views/Shared/_Layout.cshtml";
}
  

_Layout.cshtml

 <!DOCTYPE html>
<html>
<head>
  //...
</head>
<body>
<div class="container">
    @Html.Partial("HeaderPartialView")
    <div class="row">
        <div class="col-md-3" id="LeftPane" style="border-width:3px">
            @Html.Action("LeftPane", "Nav")
        </div>
        <div class="col-md-9" id="Content">
            @RenderBody()
        </div>
    </div>
    @Html.Partial("FooterPartialView")
</div>
</body>
</html>
  

Действие контроллера вызывается с помощью javascript $.post('/Query/GetUserQuery', { jsonQuery: jsonString }); и просто десериализует json в объект, который я передаю в качестве модели моему общему представлению.

 public ActionResult GetUserQuery(string jsonQuery) {
    //Deserialization jsonQuery -> result
    return PartialView("_ShowData", result);
}
  

Пожалуйста, помогите мне. Раньше у меня не было проблем с частичными представлениями, похоже, я пропустил что-то важное.

Комментарии:

1. Показанный вами скрипт не добавляет полученную вами часть в DOM (вам нужно сделать это при успешном обратном вызове)

2. Если вы используете ajax. Можете ли вы поделиться кодом?

3. @Kumar_Vikas, похоже, Стивен был прав, я не добавил обратный вызов успеха, на случай, если вы просите проверить это.

4. Продолжайте и добавьте успешный обратный вызов и попробуйте.

Ответ №1:

Спасибо за @StephenMuecke, я понял. Стивен, если вы опубликуете свой комментарий в качестве ответа, я приму его, на данный момент я публикую это, возможно, это поможет кому-то в будущем.

Для того, чтобы все заработало, я просто добавил успешный обратный вызов. Очень просто, как я могу забыть об этом?

             $.post('/Query/GetUserQuery', { jsonQuery: jsonString })
            .done(function (data) {
                $('#Results').append(data);
            });