함수에서 객체를 반환하려고하면 정의되지 않습니다. 그리고 나는 그 객체가 비어 있지 않다는 것을 확신합니다. 그렇지 않으면 alert(response.html);
이 작동해서는 안됩니다.Json 객체를 반환 할 수없는 이유는 무엇입니까?
var Core = {
"Ajax" : function(url, data){
$.ajax({
type: "POST",
url: host + url,
data: data,
success: function(json){
var response = $.parseJSON(json);
if(response.status == "200"){
alert(response.html);
return response;
}
else{
alert(response.html);
return false;
}
},
error:function (xhr, ajaxOptions, thrownError){
alert(xhr.status);
}
});
}
};
포인트. Houwever 나는 asyncronously asint 옵션을 시도했지만 여전히 작동하지 않습니다. –
@Sein'async : false' 실제로 synchonous하게 만들지 만, 그 방법으로는 작동하지 않습니다. -'$ .ajax()'는 항상 성공 콜백의 반환 값이 아닌'XMlHTTPRequest' 객체를 반환합니다. 성공 콜백을 XMLHTTP 객체에서 설정하고 거기에서 값을 가져올 수는 있지만 미리 정의 된 변수를 설정하는 것이 더 쉽습니다. 'var result = null; $ .ajax (....)' –
@ 센 : 이제 비동기 적입니다. AJAX 호출에서 "반환"할 수 없으므로 콜백 함수를 사용해야합니다. –