У меня есть вызов ajax, который запрашивает данные из метода контроллера MVC.
Я возвращаю результат Json от контроллера.
Запрос Ajax завершается, но возвращаемые данные не определены.
Ajax вызова
Ajax call возвращает неопределенные данные
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
возвращается как неопределенная?
ОБНОВЛЕНИЕ
Как было предложено ниже, я написал данные на консоль и, кажется, возвращает пустую строку. Поэтому, я думаю, вопрос должен быть более «Почему данные возвращаются пустым?
Что предоставляет 'console.log (data)' give you? – reg4in
Проверьте console.log (JSON.stringify (данные)) или оповещение (JSON.stringify (data)), чтобы узнать, что вы получаете. Чтобы проверить, действительно ли вы достигли CheckUser, поместите точку останова в начале метода, чтобы точно увидеть, что происходит внутри. –
Или, еще лучше, добавьте 'debugger;' в свою функцию и научитесь отлаживать JavaScript в своем браузере. –