Как использовать частичные представления - PullRequest
0 голосов
/ 12 июля 2011

Я перехожу к части на моей странице MVC 3, где мне нужно сделать обратный вызов JQuery $ .Ajax, но в отличие от ранее, где я возвратил несколько простых значений и обработал обновление интерфейса с помощью JQuery, мне нужно обновить частьстраницы, которая отображает основные данные ViewModel.По сути, это почти как если бы мне нужно было сделать обратный вызов, но вместо возврата JSonResult я хочу вернуть исходный вид ??Я уверен, что мне нужно подумать об использовании частичных представлений?Может кто-нибудь посоветовать или, возможно, указать мне хороший учебник?

Заранее спасибо.

1 Ответ

2 голосов
/ 12 июля 2011

Если я правильно понимаю.В этом сценарии я обычно использую то же действие, но возвращаю полное или частичное представление на основе метода IsAjaxRequest.

    public ActionResult MyAction(string someParam)
    {
        //...

        if (Request.IsAjaxRequest())
        {
            return PartialView(model);
        }
        else
        {
            return View(model);
        }
    }

Это можно затем вызвать в jQuery, используя что-то вроде:

$("a.myAction").click(function (event)
{
    event.preventDefault();
    var button = $(this);

    // Get more results using ajax
    $.get(button.attr("href"), function (data)
    {
        // Add the new content 
        $('div#myActionResult').empty().html(data);
    }, "html");
}

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...