我有一个MVC应用程序 在我的索引页面中,我有一个子菜单,当单击一个动作链接时,我希望它通过jquery调用控制器的功能并加载所有内容并将其加载到div中。
这就是我所看到的
<ul class="nav nav-tabs">
<li onclick="loadDetails">@Html.MenuItemActionSpecific("Details","Details","Account")</li>
<li>@Html.MenuItemActionSpecific("Change password", "Manage", "Account")</li>
<li>@Html.MenuItemActionSpecific("Connection", "Index", "Connection")</li>
</ul>
<div id="content"></div>
我想在div content
Html.MenuItemActionSpecific
是自定义Html帮助器。
这就是我试过的
function loadDetails() {
alert("hello");
event.preventDefault();
$('#content').load(@Url.Action("Details"));
}
单击子导航菜单时,不会调用该函数。
这是生成的Html,
<ul class="nav nav-tabs">
<li onclick="loadDetails"><li><a href="/Account/Details">Details</a></li></li>
<li><li><a href="/Account/Manage">Change password</a></li></li>
<li><li><a href="/Connection">Connection</a></li></li>
</ul>
控制器中的详细信息操作
public ActionResult Details()
{
....
return PartialView(userDetail);
}
我该怎么办?
答案 0 :(得分:0)
纠正错误
试试这个
<li onclick="loadDetails()"><li><a href="/Account/Details">Details</a></li></li>
$('#content').load('<%= Url.Action("Details") %>');
答案 1 :(得分:0)
下面必须工作。使用此
function loadDetails() {
alert("hello");
event.preventDefault();
$.get('@url.action("Details","YourControllerName")',function(data){
$('#content').html(data);
})
}
同样在您的控制器中,而不是使用return View("YourViewName")
,请使用return PartialView("YourViewName");