1

作为 Ajax 的新手,我需要有关如何添加查询字符串和调用索引操作而无需回发的帮助。现在链接看起来像这样:

<a href="@EPiServer.UriSupport.AddQueryString(Request.RawUrl, "section", Server.UrlEncode(sectionGroup.Term))">@sectionGroup.Term, @sectionGroup.Count</a>

我的猜测是使用 Ajax.ActionLink 但我如何创建查询字符串?

4

1 回答 1

1

您添加到 routeValues 并且与路由段不匹配的所有内容都将添加到查询字符串中。

使用您的示例,它看起来像这样Ajax.ActionLink

@Ajax.ActionLink(
    sectionGroup.Term + ", " + sectionGroup.Count, 
    "Index", 
    new { section = sectionGroup.Term }, 
    new AjaxOptions { UpdateTargetId = "id-of-container" }
)

在您的 Index 操作中,您需要在使用 ajax 请求时返回部分视图。这将从响应中删除布局(母版页)。

if (Request.IsAjaxRequest())
    return PartialView(model);

return View(model);

请记住添加对jquery.unobtrusive-ajax.js文件的引用。

于 2013-11-02T16:05:08.590 回答