我正在使用MVC应用程序开发一个网站。我使用Ajax删除特定记录。这里的事情是,删除功能在本地使用正常。
几天前,我将MVC应用程序部署到GoDaddy服务器。当我在那里测试应用程序时,我看到使用Ajax删除功能无法正常工作。
这是脚本。当我调试时,我可以看到id值。
[Authorize]
[HttpDelete]
public ActionResult Delete(int id)
{
try
{
CourseBl.Delete(id);
return Json("Deleted Successfully");
}
catch(Exception ex)
{
throw ex;
}
}
要删除的控制器动作代码。
<UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" compressableMimeType="text/html,text/xml,text/plain,text/css,text/javascript,application/javascript,application/json" compression="on" compressionMinSize="1024" useSendfile="false" />
任何人都可以帮我解决这个问题吗?
答案 0 :(得分:1)
将您的ajax调用更改为
$.ajax({
url: "@Url.Action("Delete","Course")?id=" + CourseId,
dataType: "json",
type: 'DELETE',
dataType: 'json',
cache: false,
success: function (data) {
deleteCourse(CourseId);
},
error: function (xhr) {
alert('error');
}
});
它应该有效。 如果没有,试试这个:
$.ajax({
url: "@Url.Action("Delete", "Course")",
type: 'Post',
data: {
id: CourseId,
},
cache: false,
dataType: 'json',
success: function (data) {
deleteCourse(CourseId);
},
error: function (jqXhr, textStatus, errorThrown) {
alert('error');
},
});
最后将您的操作方法更改为[HttpPost]