【发布时间】:2018-03-28 11:14:08
【问题描述】:
在过去的 3 个小时里,我一直在努力完成这项工作: 这是我的项目的图片: https://i.imgur.com/mhfgP4A.png
这是我在 Controllers 文件夹中的 HomeController.cs:
public class HomeController : Controller
{
public class HomeController : Controller
{
[WebMethod]
public static int OnSubmit()
{
return 1;
}
[HttpGet]
public ActionResult Index()
{
return View("Index");
}
}
}
这是我的 Index.cshtml 中的 AJAX 脚本:
<script type="text/javascript">
function sendRequest() {
$.ajax({
type: "POST",
url: 'HomeController/OnSubmit',
contentType: "application/json; charset=utf-8",
success: OnSuccess
});
}
function OnSuccess(result) {
alert(result);
}
</script>
每次我尝试运行脚本时,它都会显示 控制台中的“POST http://localhost:62738/HomeController/OnSubmit404(未找到)”。 我一直在尝试不同的 url,@URL.Action,创建另一个类并将它放在不同的文件夹中,看看它是否有效,但没有。总是同样的错误。还尝试将[HttpPost]放在[WebMethod]下
【问题讨论】:
-
我认为您需要将 [WebMethod] 替换(不在)为 [HttpPost]。还要删除 static 关键字。 MVC 不允许在 Action 方法中使用静态
-
它工作.. 谢谢!我认为问题出在 static 关键字上。之前尝试用 HttpPost 替换 WebMethod。
-
很高兴有帮助。请接受我发布的答案,这将对未来的读者有所帮助。