我的问题是:如何区分传递给视图的 JSON 消息?或者
如何区分 JSON 成功和错误消息?
我有以下 ajax 帖子和返回 JSON 的方法。但是无论发送到视图的任何消息,我都只会通过“成功”的第一个功能收到消息,即使代码隐藏失败,我也不会收到失败消息!
阿贾克斯邮报
$('#CreateLesson').on('submit', function (e) {
e.preventDefault();
var lesson = $(this).serialize();
var Url = $(this).attr('action');
$.post(Url, lesson,
function (d) { alert(JSON.stringify(d)); })
.fail(function (response) { alert("error !!"); });
});
方法返回 JSON
[HttpPost]
public JsonResult Create(Lesson lesson)
{
if (ModelState.IsValid)
{
_context.Add(lesson);
_context.SaveChanges();
return Json(lesson);
}
return Json("There is something went wrong!! The lesson hasn't been add");
}
同样,我总是通过第一个函数返回方法结果。我怎么知道的?我从来没有得到第二个函数结果 Alert("error !!")
如果 ModelState.IsValid = false 我应该怎么做才能将 JSON 返回到第二个函数?