【发布时间】:2012-10-06 09:43:12
【问题描述】:
我有一个 asp.net 项目,其中包含 asp.net mvc 2 代码的 Area 文件夹。 当我创建该区域时,它创建了一个“视图”和一个“控制器”文件夹。
我的视图是局部视图,所以是 .ascx。 从这个角度来看,我想在 Ajax 中调用一个控制器方法。
这是我的观点代码:
<script type="text/javascript">
$("#<%=btnSearch.ClientID %>").click(function() {
var text = $("#<%=tbSearchBox.ClientID %>").val;
$.ajax({
type: "GET",
url: '/Areas/Settings/User/SearchUser',
success: function(msg) {
alert("toto");
}
});
});
</script>
Areas是区域的文件夹名称,Settings是包含Controller和View文件夹的文件夹名称,User是文件夹Controller(UserController)的控制器,SearchUser是我要调用的方法。
此时,这个方法刚刚:
/// <summary>
/// Évènement déclenché lors de la recherche d'un utilisateur.
/// </summary>
/// <param name="text">Le texte à chercher.</param>
/// <returns>OK</returns>
public string SearchUser(string text)
{
return "OK";
}
我上铬:
GET http://localhost/Areas/Settings/User/SearchUser 404 (Not Found)
我该怎么办?
【问题讨论】:
-
你能展示你的路由设置吗?
-
@Andrei 这是我的默认路由设置: public override void RegisterArea(AreaRegistrationContext context) { context.MapRoute( "Settings_default", "Settings/{controller}/{action}/{id}", new { action = "索引", id = UrlParameter.Optional }); }
标签: asp.net asp.net-mvc jquery asp.net-mvc-2 asp.net-ajax