Jquery $.ajax $.post $.get 异步请求 return undefined null问题

时间:2022-08-06 20:16:36

这段代码

function ExistsUserName(UserName)
{
    $.ajax({
        type:"GET",
        url:"Ajax/ajax.ashx",
        async:false,
        data:"UserName=" + UserName,
        success:function (data)
        {
            alert(data);
            return data;
        }
    })
}
首先ajax请求是异步的,要return值的话,要把默认的异步改为同步,也就是上面的async:false,除此之外还要在外面定义返回值变量,在ajax方法外,或者success外return value;否则上面这样还是返回undefined,应该改成:

function ExistsUserName(UserName)
{
    var value = "";
    $.ajax({
        type:"GET",
        url:"Ajax/ajax.ashx",
        async:false,
        data:"UserName=" + UserName,
        success:function (data)
        {
            value = data;
        }
    })
    ruturn value;
}
还有其他的方法,我稍候在写