在一个学习课程项目中,我有一个名为的 MVC PartialView _item
,在其中我放置了一个 href
链接 ( <a href = '@Url.Action("AddToShoppingCard", "Home", Model)'>
) 来调用并将参数传递给 Home 控制器中的 Action 方法 (AddToShopingcart),该方法依次在主控制器中呈现另一个 PartialView (_Footer) _layout
. 虽然我可以这样做,但问题是当我单击 ActionLink 时,它会将我扔到主页面之外,_layout
并且只显示_Footer
浏览器中的内容。
问问题
1156 次
1 回答
0
您可以改用 AJAX 链接:
@Ajax.ActionLink(
"Add to shopping cart",
"AddToShoppingCard",
"Home",
new AjaxOptions {
UpdateTargetId = "someDivYouWantToUpdateWithThePartial"
}
)
Ajax.ActionLink 帮助器将生成一个普通<a>
标记,但它会向其添加一些 HTML5 data-* 属性,这些属性由jquery.unobtrusive-ajax.js
脚本解释(您需要将其包含到您的页面中)并将 AJAXify 这个锚点。AjaxOptions 允许您指定 AJAX 请求的某些属性,例如当 AJAX 请求成功时您希望更新的某些 DOM 元素的 id。在您的情况下,可能是某个 div 将接收由使用 AJAX 调用的控制器操作返回的 PartialView。这样,只会刷新页面的一部分,浏览器不会离开它。
于 2013-08-23T14:30:50.007 回答