如何从执行jquery ajax的函数中获取数据

时间:2016-10-31 20:13:04

标签: javascript jquery ajax

我已经阅读了几篇帖子和问题,但似乎所有这些都让人感到困惑而不是帮助。我正在做看似简单的事情。

基本上我有一个登录表单上的按钮......

$("#beginButton").click(function () {
    if (validateStep(0) != false)
        goWizard(1);
});

单击时验证三个文本字段不为空,然后将值传递给“登录”用户的API,并返回包含有关它们的详细信息的数据集。

function validateStep(step) {
    var isValid = false;
    $("#alertsPanel").html("").fadeOut();

    switch (step) {
        case 0:
            if ($.trim($("#login_LastName").val()).length == 0 || $.trim($("#login_BarNumber").val()).length == 0 || $.trim($("#login_BirthYear").val()).length == 0) {
                $("#alertsPanel").html("<strong>Error:</strong> All values are required.").fadeIn();
                return false;
            }
            else {
                $.ajax({
                    url: "/api/User/authenticateByLNameBYearBarNum",
                    //async: false,
                    cache: false,
                    data: {
                        lastName: $.trim($("#login_LastName").val()),
                        barNumber: $.trim($("#login_BarNumber").val()),
                        birthYear: $.trim($("#login_BirthYear").val())
                    },
                    dataType: "json",
                    error: function (response) {
                        $("#alertsPanel").html("<strong>Error:</strong> Member information not found.").fadeIn();
                        return false;
                    },
                    success: function (data) {
                        return true;
                    }
                });
            }
            break;

    }

    return isValid;
}

前两个检查工作正常,我可以验证输入不是空的,如果API调用找不到/返回该人,我可以处理。我遇到与其他人一样的问题...当找到该人时,我无法正确地将数据返回到调用函数。我得到一个对象,但它似乎不包含人员详细信息。我看到API确实返回了相应的JSON。

0 个答案:

没有答案