如何使用ajax在控制器中调用Method?
我正在使用以下代码,但它会出错:
public void DeleteUser(int no)
{
if (Users!= null)
{
Users.RemoveAll(d => d.No == no);
}
}
ajax代码:
$.ajax({
data: { no: id },
url: '@Url.Action("DeleteUser", "UserController")',
complete: function (xhr, status) {
alert(status); // status = error
}
});
答案 0 :(得分:0)
首先,我将从Url.Action参数中删除控制器。 它使用命名约定解析,因此您不必指定控制器名称。
$.ajax({
type: 'POST',
url: '@Url.Action("DeleteUser", "User")',
data: { no: id },
success:function(result){
// success code
}
});
我还要确保您指定DeleteUser是帖子I.e。
[HttpPost]
public void DeleteUser(int no)
您还需要将事件附加到文档就绪加载I.e。
中的按钮或其他元素 $(function(){
$("button").click(function(){
// the above ajax code
});
});
如果不能解决上述问题,您需要使用浏览器的dubugger,控制台和使用fiddler之类的请求进行调试。
值得花时间学习如何调试,因为它更容易识别语法错误,如果你实际上是在击中你的控制器。