0

我有以下问题。

我的网址结构是这样的:

/人/编辑/用户代码

在我的控制器中,我有以下内容:

    [AcceptVerbs(HttpVerbs.Post)]
    public PartialViewResult LoanRefresh(string id)
    {
        PeopleModel p = new PeopleModel();
        return PartialView("_LoanHistory", p.getPersonLoanHistory(id));

    }

在我看来,我有:

@Ajax.ActionLink("Refresh", "LoanRefresh", new { id = Model.IdentityCode }, new AjaxOptions { HttpMethod = "POST", UpdateTargetId = "loanHistory", LoadingElementId = "Loading"  }, new { @class = "button" })

 <div id="loanHistory">
    @Html.Partial("_LoanHistory", Model.Loans)
 </div>

当运行 Ajax.ActionLink 时,它会恢复数据并更新 div,但是 webgrid 上排序链接的 url 然后将它们的地址更改为:

/People/ LoanRefresh /AFU0006?sort=CreatedOn&sortdir=ASC

我需要保持:

/People/编辑/AFU0006?sort=CreatedOn&sortdir=ASC

任何帮助将不胜感激。

4

2 回答 2

1

好吧@Nick,那是因为您的操作名称是LoanRefresh而不是Refresh。为此,您可能需要进行一些路由,甚至将 LoanRefresh 结果重定向到名为 Refresh 的操作。

于 2011-05-26T17:28:07.107 回答
0

尝试设置ajaxUpdateContainerId为在局部视图中指定的对象,而不是最初调用局部视图的视图中的对象。然后排序 URL 应该可以正常工作。

于 2013-08-05T16:43:05.973 回答