在我的 ASP.net mvc3 项目中,我使用 ajax 调用将 json 数据发送到 Controller Company 中的创建操作方法。但是当我调试ajax调用时,它总是以错误结果而不是成功结果结束。
ajax 调用:
$.ajax({
url: '/Company/Create',
type: 'POST',
data: JSON.stringify(CreateCompany),
dataType: 'Json',
contentType: 'application/json; charset=utf-8',
success: function () {
alert('ajax call successful');
},
error: function () {
alert('ajax call not successful');
}
});
我在公司 Controller 中的操作方法:
[HttpPost]
public ActionResult Create (Company company)
{
try
{
//Create company
CompanyRepo.Create(company);
return null;
}
catch
{
return View("Error");
}
}
我已经调试了actionmethod,但他按照他应该的方式完成了它。 因此,通过 ajax 调用发送的数据将被处理并写入数据库。 (action方法不使用catch部分)。
为什么我的 ajax 调用仍然给出消息“ajax 调用不成功”?
最佳答案
我曾经在获取 JSON 结果时遇到过同样的问题。 我所做的是将 dataType 设置为“text json”:)) 如果这没有帮助,请尝试通过获取错误的详细信息来获取其他信息,即:
$.ajax({
url: '/Company/Create',
type: 'POST',
data: JSON.stringify(CreateCompany),
dataType: 'text json',
contentType: 'application/json; charset=utf-8',
success: function () {
alert('ajax call successful');
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert("XMLHttpRequest=" + XMLHttpRequest.responseText + "\ntextStatus=" + textStatus + "\nerrorThrown=" + errorThrown);
}
});
顺便说一句:我在 StackOverflow 上找到了这个解决方案
关于asp.net-mvc-3 - ajax 调用导致错误而不是成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5867706/