상세 컨텐츠

본문 제목

ajax 결과 데이터가 undefined가 나올때

Programming/javascript

by luckey 2014. 10. 16. 15:14

본문

form의 특정 정보를 서버에서 ajax로 체크한 후 값을 받아와서 비교하고 싶을때...

 

function test(){

var returnData = ajaxReturn();

}

 

function ajaxReturn(){

var returnData = "error";

var uri= "";

var param = "";

$.ajax({

type:"POST",

url:uri,

data:param,

datatype:"json",

success:function(data){

returnData = data.RESULT;

return returnData; //여기 있으면 undefined가 return 된다.

}

});

 

return returnData; //여기 있으면 최초 설정한 error가 return 된다.

}

 

위에처럼 하면 원하는 정보를 받을 수 없게 된다.

 

}
    var xmlRequest;
     if(window.ActiveXObject) {
         xmlRequest = new ActiveXObject("Microsoft.XMLHTTP");
     } else if(window.XMLHttpRequest) {
         xmlRequest = new XMLHttpRequest();
     }

    xmlRequest.open("POST", url, false);
    xmlRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlRequest.send(null);

    return xmlRequest.responseText; //responseText 를 ResponseText로 쓰게 되면 크롬에서 사용불가
}

 

위에처럼 xmlRequest를 사용하던가.. 아니면

 

function test(){

var returnData = "";

ajaxReturn().done(function(data){

returnData = data.RESULT;

}); 

 

}

 

function ajaxReturn(){

var uri= "";

var param = "";

return $.ajax({

type:"POST",

url:uri,

data:param,

datatype:"json"

});

}

 

위에처럼 데이터를 받아서 사용하도록 한다.

관련글 더보기

댓글 영역