2014-09-02 5 views
2

질문 : 정보가 변경되면 onreadystatechange가 'myDiv'태그를 업데이트합니까? 또는 단추를 클릭해야합니다. 내가 묻는 것은 onreadystatechange는 변경 될 수있는 함수에 내장 된 사용자이거나 AJax 호출이 만들어 질 때마다 사용자가 만든 함수이다.onreadystatechange 함수는 어떻게 작동합니까?

코드 :

function loadXMLDoc() 
{ 
    if (window.XMLHttpRequest) 
    {// code for IE7+, Firefox, Chrome, Opera, Safari 
    var xmlhttp=new XMLHttpRequest(); 
    } 

    xmlhttp.onreadystatechange=function() // <----- Question here. 
    { 
    if (xmlhttp.readyState==4 && xmlhttp.status==200) 
    { 
     document.getElementById("myDiv").innerHTML=xmlhttp.responseText; 
    } 
    } 
} 

    .... 

    xmlhttp.open("GET","demo_get.asp",true); 
    xmlhttp.send(); 

HTML :

<button type="button" onclick="loadXMLDoc()">Request data</button> 
    <div id="myDiv"></div> 

답변

2

XMLHttpRequest의 변경을 HTTP 요청/응답의 상태 처리되는 때 실행됩니다.

그 상태는 다음과 같습니다

0 open()이 아직 호출되지 않은 UNSENT.
OPENED send()에 아직 이 호출되지 않았습니다.
2 HEADERS_RECEIVED send()가 호출되었으며 헤더와 상태를 사용할 수 있습니다.
3로드 중 다운로드 중; responseText는 부분 데이터를 보유합니다.
4 완료 작업이 완료되었습니다 입니다.

코드 작성 방법에 따라 버튼을 클릭하여 요청을 보내야합니다.

관련 문제