JQuery를 사용하여 객체 배열에 대한 REST 요청을하고 있습니다.올바른 형식으로 REST 요청에서 JQuery 결과를 변환 할 수 없습니다.
코드의 "성공"부분에서는 모든 것이 좋지만 배열의 객체는 올바른 유형으로 변환됩니다. 그러나 변수 (docStructures)에 할당하고 JQuery 메서드에서 변수를 이동하려고하면 객체가 "정의되지 않음"이됩니다.
어떻게 이것을 피하고 개체의 올바른 유형을 유지하는 메서드 범위 외부에서 변수를 전달할 수 있습니까?
jQuery.ajax({
type: 'GET',
url: contextPath + "/rest/dcm-jira/1.0/document/structure",
data: {
"issueId": selectedRevision.issueId
},
success: function(structures) {
docStructures = structures;
console.log(docStructures)
},
});
console.log(docStructures)
A :
이 코드를 정돈 보이게하려면 jQuery의 지연 메커니즘을 사용할 수 있습니다. $ .ajax는 비동기 함수입니다. 비동기 함수 처리가 가장 일반적인 js 질문이라고 생각합니다. –음 - AJAX 작동 방식은 서버에서 응답을받을 때 호출 할 함수를 전달하는 것입니다. 귀하의 코드가 현재하고있는 일은 - 응답 로그'docStructures'를 다시받을 때 (성공한 경우)에 할당되지 않은'docStructures' (코드의 마지막 줄)를 기록하고, 아약스를 수행합니다. – eithed
아직 중복에 투표 할 수 없습니다. 이것은 명백한 중복입니다 : http://stackoverflow.com/questions/14220321/how-do-i-return-the-response-from-an-asynchronous-call –