我有布局页面,我的左侧导航栏已定义。我想在左侧导航栏中加载菜单项的子选项。我为顶部菜单项添加了一个ajax click事件。但它总是达到RouteMap中定义的默认方法,而不是我为加载局部视图而编写的操作方法。
我的Routeconfig.cs文件。我还有其他地图定义了这个文件。但这是受到打击的方法。
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new {
controller = "Client",
action = "Index",
id = UrlParameter.Optional }
);
_Layout Page
中的菜单项 <li>
<a href="#" id="recentlist">Recent list</a>
<ul>
<li>
<a href="#" class="back">Main Menu</a>
</li>
<div id="recentClients"></div>
</ul>
</li>
这是我在_Layout页面中定义的javascript。
$('#recentlist').click(function () {
$.ajax({
Url: "@Url.Action("RecentList", "Navigation")",
success: function (r) {
$('#recentClients').html(r);
}
});
});
但它永远不会在我的NavigationController中遇到RecentList方法。始终采用RouteConfig.cs中定义的默认方法
这也是我的控制器代码。
public ActionResult RecentList()
{
var clientModel = new ClientModel();
var recentlList = clientModel.GetRecentList();
return PartialView("_RecentlList", recentlList );
}
答案 0 :(得分:0)
很难100%确定,但当你的ActionResult
尝试在{{1 }}
所以它应该是:
RecentlyUsedList
控制器需要命名为RecentList
。