ASP.NET MVC 3 Razor рендеринга партиалов с одного контроллера вид на другой контроллер вид - PullRequest
0 голосов
/ 14 апреля 2011

Каков наилучший способ перенаправления на другой частичный вид с частичного вида без обновления главной страницы.Таким образом, 1 частичный вид меняется на другой частичный вид после нажатия кнопки.Вы можете сделать это с помощью jQuery, или есть лучший способ сделать это?Также вам нужно передать идентификатор с ним

Ответы [ 2 ]

3 голосов
/ 14 апреля 2011

AJAX кажется хорошим решением в этом случае. Чтобы вы могли разместить кнопку где-нибудь на странице:

@Html.ActionLink(
    "link text",
    "someAction",
    "someController",
    new { id = "put here some id you want to send to server" },
    new { id = "myLink" }
)

<div id="partial2Div"></div>

, а затем ненавязчиво AJAXify эту ссылку в отдельном файле JavaScript:

$(function() {
    $('#myLink').click(function() {
        $('#partial2Div').load(this.href);
        return false;
    });
});

Действие контроллера просто вернет соответствующее частичное представление:

public ActionResult SomeAction(string id)
{
    var model = ...
    return PartialView(model);
}
0 голосов
/ 14 апреля 2011

Ajax.ActionLink сделает это для вас из коробки без необходимости писать дополнительный код JavaScript.

@Ajax.ActionLink("Link Text","Action","Controller",new {id= myId},new AjaxOptions{InsertionMode=InsertionMode.Replace, HttpMethod="get", UpdateTargetId="target-location-id"})
...