>웹 프론트엔드 >JS 튜토리얼 >Prototype의 'onComplete' 핸들러를 사용하여 AJAX 응답 텍스트에 어떻게 액세스할 수 있나요?

Prototype의 'onComplete' 핸들러를 사용하여 AJAX 응답 텍스트에 어떻게 액세스할 수 있나요?

Barbara Streisand
Barbara Streisand원래의
2024-12-12 12:41:11783검색

How Can I Access AJAX Response Text Using Prototype's `onComplete` Handler?

프로토타입으로 AJAX 응답 텍스트 가져오기

AJAX 응답은 텍스트 형식인 경우가 많으며 추가 처리를 위해서는 이 텍스트를 검색하는 것이 중요합니다. 프로토타입은 이 응답 텍스트에 액세스하는 편리한 방법을 제공하지만 일반적인 접근 방식을 약간 조정해야 합니다.

코드 조각에서 onComplete 이벤트 핸들러는 응답 텍스트를 가져와야 하는 위치입니다. 그러나 초기 구현의 "result" 변수는 비동기 작업으로 인해 onComplete 함수 외부에서 액세스할 수 없습니다.

이를 극복하기 위해 Prototype의 onComplete 핸들러는 콜백 함수를 매개변수로 허용합니다. 이 콜백 함수는 AJAX 요청이 완료되면 실행되며 responseText를 인수로 받을 수 있습니다.

수정된 코드는 다음과 같습니다.

somefunction: function(callback) {
  var result = "";
  myAjax = new Ajax.Request(postUrl, {
    method: 'post',
    postBody: postData,
    contentType: 'application/x-www-form-urlencoded',
    onComplete: function (transport) {
      if (200 == transport.status) {
        result = transport.responseText;
        callback(result);
      }
    }
  });
}

어떤 함수를 호출할 때 콜백 함수를 제공하세요. 익명 함수:

somefunction(function (result) {
  alert(result);
});

이 접근 방식을 사용하면 콜백 함수에서 응답 텍스트에 액세스할 수 있으므로 추가 처리 또는 디스플레이.

위 내용은 Prototype의 'onComplete' 핸들러를 사용하여 AJAX 응답 텍스트에 어떻게 액세스할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.