通过ajax调用HomeController中的方法
本文关键字:方法 HomeController ajax 调用 通过 | 更新日期: 2023-09-27 18:09:17
我无法通过以下方式从视图发出ajax请求:
C:'Users'Programmer'Documents'visual studio 2012'Projects'RatingCandidate'RatingCandidate'Views'Home'Index.aspx
ajax请求试图调用HomeController中的方法,方法如下:
C:'Users'Senior'Documents'visual studio 2012'Projects'RatingCandidate'RatingCandidate'Controllers'HomeController.cs
在视图中,我调用onclick button中的函数:
<input type="button" style="width: 100px; height: 30px;" value="Enviar" runat="server" onclick="SendEmail()" />
和ajax:
function SendEmail() {
$.ajax({
url: '../Controllers/HomeController/SendEmail',
type: 'POST',
//data: { className: cName },// Your parameter
success: function (result) {
// What you want to do after the call
}
});
};
和HomeController正在尝试接收以下内容:
[HttpPost]
public JsonResult SendEmail()
{
return Json(true, JsonRequestBehavior.AllowGet);
}
我相信这是我的疏忽,但不知道在哪里,有没有人知道他可能在哪里出错?
你需要搜索的是MVC中的路由。
你不会像调用文件或其他东西那样调用你的控制器。控制器类的虚拟路径与包含该类的.cs
文件的路径无关。
默认路由定义如下:{Controller}/{Action}/{Id}
(其中Id
id可选),因此要调用您的控制器,您应该调用Home/SendEmail
(控制器名称默认不带Controller
后缀)。
请查看http://www.asp.net/mvc/overview/controllers-and-routing