Jquery ajax没有';在mvc.net中,在远程端不工作,但在本地主机上工作
它在本地主机上正常工作,但在部署后不工作。我使用jQuery从控制器中删除:这里我使用类型:delete,但即使get,POST都不起作用Jquery ajax没有';在mvc.net中,在远程端不工作,但在本地主机上工作,jquery,ajax,asp.net-mvc,Jquery,Ajax,Asp.net Mvc,它在本地主机上正常工作,但在部署后不工作。我使用jQuery从控制器中删除:这里我使用类型:delete,但即使get,POST都不起作用 $("#btnDelete").click(function (e) { e.preventDefault(); //alert("delete button clicked"); bootbox.confirm("Do you really want to delete this User", functi
$("#btnDelete").click(function (e) {
e.preventDefault();
//alert("delete button clicked");
bootbox.confirm("Do you really want to delete this User", function(result) {
if (result) {
$.ajax({
url: "User/DoDelete/"+@Model.ID,
type:"Delete",
success: function() {
// bootbox.alert("USer "+ @Model.ID+" Deleted successFully");
window.location.href = '@Url.Action("Index","User")';
},
error:function() {
bootbox.alert("Error");
}
});
}
});
});
我的控制器是
[HttpDelete]
public ActionResult DoDelete(int id)
{
context = new Cost();
UserEmployee user = context.UserEmployees.Where(x => x.ID == id).FirstOrDefault();
if (user == null)
{
return HttpNotFound();
}
try
{
context.UserEmployees.Remove(user);
context.SaveChanges();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
return RedirectToAction("Index");
}
我不明白为什么它在本地主机上工作,但在部署端却不工作 使用方法如下:
url: '@Url.Action("DoDelete","User",new RouteValueDictionary(new { id = Model.ID}))',
或使用如下
url: '@Url.Action("DoDelete", "User", new { id = Model.ID})',
非常感谢,写在下面解决了这个问题
var newUrl='@Url.Action("DoDelete","User")?id='+@Model.ID;
将应用程序设置为IIS或虚拟目录中的应用程序。而且,直接在默认网站下?作为IIS中默认网站下的应用程序,虽然这可能是正确答案,但您不应该只发布代码答案。请解释这将纠正用户问题的原因。