作为 Ajax 的新手,我需要有关如何添加查询字符串和调用索引操作而无需回发的帮助。现在链接看起来像这样:
<a href="@EPiServer.UriSupport.AddQueryString(Request.RawUrl, "section", Server.UrlEncode(sectionGroup.Term))">@sectionGroup.Term, @sectionGroup.Count</a>
我的猜测是使用 Ajax.ActionLink 但我如何创建查询字符串?
作为 Ajax 的新手,我需要有关如何添加查询字符串和调用索引操作而无需回发的帮助。现在链接看起来像这样:
<a href="@EPiServer.UriSupport.AddQueryString(Request.RawUrl, "section", Server.UrlEncode(sectionGroup.Term))">@sectionGroup.Term, @sectionGroup.Count</a>
我的猜测是使用 Ajax.ActionLink 但我如何创建查询字符串?
您添加到 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文件的引用。