如何将控制器的值返回给 $.Ajax
How to get value from controller back to $.Ajax
我的设置:asp.net mvc 网络应用程序
我无法将值从控制器返回给 $.Ajax 调用(见下文)。控制器删除数据库中的一条记录并统计一些其他记录。
$.ajax({
type: "POST",
url: actions.action.RemoveItem + "?id=" + dataId,
contentType: "application/json; charset=utf-8",
dataType: "json",
traditional: true,
success: function (result) {
alert(result);
},
error: function (result) {
alert("Error");
}});
[HttpPost]
public JsonResult RemoveItem(int id)
{
... delete a record in the db
itemsCount = .... counts of some other records in the db
if (deletedRecord.id != null)
{
return Json(new { itemsCount });
}
else
{
return JsonError();
}
}
ajax 调用和控制器正常工作,但是当我尝试在成功函数中使用返回值时,警报(结果)给出 [object object]。
我查看了所有相关帖子,但找不到有效的解决方案。有人能给我提示问题出在哪里以及如何解决吗?
提前谢谢你和问候,Manu
结果是一个 javascript 对象,因此警报正常工作。如果你想提醒它的结构为 JSON 使用 JSON.stringify() 这样的方法:
alert(JSON.stringify(result));
如果您想访问您的 itemsCount,只需使用点或括号表示法:
alert(result.itemsCount);
alert(result['itemsCount']);
我的设置:asp.net mvc 网络应用程序
我无法将值从控制器返回给 $.Ajax 调用(见下文)。控制器删除数据库中的一条记录并统计一些其他记录。
$.ajax({
type: "POST",
url: actions.action.RemoveItem + "?id=" + dataId,
contentType: "application/json; charset=utf-8",
dataType: "json",
traditional: true,
success: function (result) {
alert(result);
},
error: function (result) {
alert("Error");
}});
[HttpPost]
public JsonResult RemoveItem(int id)
{
... delete a record in the db
itemsCount = .... counts of some other records in the db
if (deletedRecord.id != null)
{
return Json(new { itemsCount });
}
else
{
return JsonError();
}
}
ajax 调用和控制器正常工作,但是当我尝试在成功函数中使用返回值时,警报(结果)给出 [object object]。 我查看了所有相关帖子,但找不到有效的解决方案。有人能给我提示问题出在哪里以及如何解决吗? 提前谢谢你和问候,Manu
结果是一个 javascript 对象,因此警报正常工作。如果你想提醒它的结构为 JSON 使用 JSON.stringify() 这样的方法:
alert(JSON.stringify(result));
如果您想访问您的 itemsCount,只需使用点或括号表示法:
alert(result.itemsCount);
alert(result['itemsCount']);