2011-09-02 6 views
0

XML 파일의 URL을받는 클래스를 만들려고합니다. 그런 다음 XML 파일을 구문 분석하고 멤버 변수 내에 데이터를 저장해야합니다. 여기에 내가 할 노력하고있어 무엇을 벗었 테스트 버전입니다 :클래스 내에서 jQuery를 사용하여 XML 파일 구문 분석

function Test(filename) { 
    this.type = "type not set"; 
    $(document).ready(function() { 
     $.ajax({ 
      type: "GET", 
      url: filename, 
      dataType: "xml", 
      success: function(xmlDoc) { 
       var xml = $(xmlDoc) 
       this.type = xml.find("type").text();     
      }  
     }); 
    }); 
} 

나는이 기능을 실행 한 다음 document.writeln을 (test.type)를 호출하면, "설정되지 입력"항상 인쇄됩니다. this.type을 xml의 값으로 정의하는 내부 함수 내에서 작성하면 예상 한 값을 볼 수 있습니다.

XML 파싱이 실제 함수 호출에서 비동기 적으로 수행되어야한다는 사실과 관련이 있다고 가정합니다. 그러나 나는 그 일을 해결할 수있는 방법을 생각해 낼 수 없다.

도움을 주시면 감사하겠습니다. 감사.

시도 : 다음

function Test(filename) { 
    var that=this; 

that.type 대신도

this.type의 것은 당신이 후에 만 ​​변수에 액세스 있는지 확인 사용

답변

1

는 두 번째 this 첫 번째 this보다는 뭔가 다른 의미 success 콜백이 발생했습니다. 함수에서 변수를 사용하는 코드를 작성하고 그 함수를 success에서 호출 할 수 있습니다.