복붙노트

[JQUERY] 변수는 AJAX 함수에서 반환되지 않습니다

JQUERY

변수는 AJAX 함수에서 반환되지 않습니다

해결법


  1. 1.당신은 그렇게 할 수 없습니다 호출이 비동기 한, get_data 기능은 AJAX 호출의 결과를 반환 할 수 없습니다.

    당신은 그렇게 할 수 없습니다 호출이 비동기 한, get_data 기능은 AJAX 호출의 결과를 반환 할 수 없습니다.

    당신이해야 할 것은 get_data 함수에 대한 콜백을 제공하고 콜백의 결과를 처리 할 수 ​​있습니다.

    function get_data(data, destination, callback) 
             {
    
                if (lock_get == 0)
                {
                    lock_get = 1;
                    $.ajax({
                        type: "POST",
                        url: destination,
                        async: true,
                        data: data,
                        success: function(data) 
                        {
                            lock_get = 0;
                            if (data && callback)
                            {
                                callback(data);
                            }
                        }
                    });
                }
             };
    

    그리고 다음과 같이 호출 :

    get_data(data, destination, function(test){
       notice(test);
    });
    

  2. 2.또는 당신이 동기 호출을 사용하는 일반적으로 나쁜 생각, 동기 AJAX 호출에서 반환 할 수 있지만, 유용 가끔있을 수 있습니다 :

    또는 당신이 동기 호출을 사용하는 일반적으로 나쁜 생각, 동기 AJAX 호출에서 반환 할 수 있지만, 유용 가끔있을 수 있습니다 :

    http://pratyush-chandra.blogspot.com/2012/04/store-ajax-json-response-into.html

  3. from https://stackoverflow.com/questions/12475269/variable-doesnt-get-returned-from-ajax-function by cc-by-sa and MIT license