Ajax调用返回未定义的数据
本文关键字:数据 未定义 返回 调用 Ajax | 更新日期: 2023-09-27 17:59:07
我有一个ajax调用,它从MVC控制器方法请求数据
我从控制器返回Json结果
Ajax请求完成,但返回的数据未定义
Ajax调用
var param = {
"username": uname,
"password": pass
};
var serviceURL = "/Account/CheckUser";
var req = $.ajax({
url: serviceURL,
type: "POST",
data: JSON.stringify(param),
contentType: "application/json",
complete: successFunc,
error: errorFunc
});
function successFunc(data) {
if (data.exists == true) {
console.log("Completed : " + data.exists);
} else {
console.log("Failed : " + data.exists);
}
}
控制器方法
[HttpPost]
public JsonResult CheckUser(string uname, string pass)
{
Boolean cont = true;
return Json(new { exists = cont });
}
有人能告诉我为什么exists
返回为未定义的吗
更新
正如下面所建议的,我将数据写入控制台,它似乎返回了一个空字符串。所以我想问题应该更多"为什么数据返回为空?"
通过complete
选项指定的函数不会接收数据(原因很充分:即使没有数据,也会调用它,因为存在错误)。将complete:
更改为success:
。
var req = $.ajax({
url: serviceURL,
type: "POST",
data: JSON.stringify(param),
contentType: "application/json",
success: successFunc, // <=== Here
error: errorFunc
});