点击PartialView
时,有人可以告诉我如何在同一页面中加载Html.ActionLink
。我在下面列出了我的要求。
在MVC5中不使用Ajax就可以处理上述所有步骤。谁能帮助我实现上述步骤?非常感谢您的帮助
答案 0 :(得分:5)
渲染视图后,加载局部视图的唯一方法是通过Ajax调用将部分视图返回到JQuery / Javascript,然后相应地更新DOM。
例如:
您的HTML
<a href="#" id="loadViewButton">Load view</a>
<div id="partialViewContainer"><!-- your partial view will be loaded in here --></div>
您的JQuery:
$('#loadViewButton').on('click', function() {
$.ajax({
type: "GET"
url: '/YourController/YourAction',
success: function (data, textStatus, jqXHR) {
$('#partialViewContainer').html(data);
}
});
});
您的控制器操作:
[HttpGet]
public ActionResult YourAction()
{
return View("YourView");
}
答案 1 :(得分:2)
使用ActionLink时,这对我来说非常有用。
<强> HTML 强>
@Html.ActionLink("Load Partial Action Link", null, null, null, new { id = "loadPartialActionLink" })
<div id="AJAXContainer"></div>
<强>的jQuery 强>
$('#loadPartialActionLink').on('click', function (e) {
e.preventDefault();
$.ajax({
type: "GET",
url: '/MyController/_MyPartial',
success: function (data, textStatus, jqXHR) {
$('#AJAXContainer').html(data);
}
});
});
控制器操作
[HttpGet]
public ActionResult _MyPartial()
{
return PartialView("_MyPartial");
}