jQuery中使用ajax同步注意事项

0

今天用了一下jQueryajax同步请求,但是却发现返回值总是为undefined,仔细看了一下发现了问题。

开始代码如下:

function getmsg() {
    $.ajax({async : false, url : "/url", cache : false, type : "GET", success : function(data) {
        return data;
    }});
}

但是调用上面的方法的时候返回的值却不存在,但是data的值是有的。

后来改了改:

function getmsg() {
    var msg = null;
    $.ajax({async : false, url : "/url", cache : false, type : "GET", success : function(data) {
        msg = data;
    }});
    return msg;
}

这样就可以了,原来success的方法相当于一个内部类,他的返回值是不能够返回到getmsg方法的。