0

在不刷新主页的情况下从部分视图重定向到另一个部分视图的最佳方法是什么。因此,单击按钮后,1 个局部视图变为另一个局部视图。你能用 jQuery 做到这一点,还是有更好的方法来执行这个?你还需要传递一个 id

4

2 回答 2

3

在这种情况下,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>

然后在一个单独的 javascript 文件中不显眼地 AJAXify 这个链接:

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

控制器动作将简单地返回相应的局部视图:

public ActionResult SomeAction(string id)
{
    var model = ...
    return PartialView(model);
}
于 2011-04-14T08:09:06.667 回答
0

Ajax.ActionLink 将立即为您执行此操作,而无需编写额外的 JavaScript 代码。

@Ajax.ActionLink("Link Text","Action","Controller",new {id= myId},new AjaxOptions{InsertionMode=InsertionMode.Replace, HttpMethod="get", UpdateTargetId="target-location-id"})
于 2011-04-14T08:16:04.880 回答