Ajax

NoaH-hyeonjun·2023년 1월 18일

javascript

목록 보기
1/7
post-thumbnail

Ajax

  1. javascript로 ajax 통신을 하는 경우
function sendRequest(){
var httpRequest = new XMLHttpRequest();
//POST방식의 Ajax통신
httpRequest.open("POST", "request_ajax.jsp", true);
httpRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
httpRequest.send("city=Seoul&zipcode=55775");

    httpRequest.onreadystatechange = function(){
      if(httpRequest.readyState == XMLHttpRequest.DONE && httpRequest.status == 200){
        document.getElementById("text").innerHTML = httpRequest.responseText;
      }
    }
}
  1. jQuery로 ajax통신을 하는 경우
function sendRequest(){
    $.ajax({
        type:'post or get',
        async:'true or false',
        url:'요청할 url',
        data:{전송할 데이터},
        dataType: '전송받을 데이터 형식',
        success: {
            //정상 요청, 응답 시 처리 작업
        },
        error : function(xhr,status,error) {
            //오류 발생 시 처리
        },
        complete:function(data,textStatus) {
            //작업 완료 후 처리
        }
    });
}

2-1. jQuery ajax 통신

속성설명
type통신 타입을 설정
url요청 URL
async비동기 여부
data서버에 요청시 보낼 매개변수
dataType받을 데이터 타입
success요청/응답에 성공했을때 구문
error요청/응답에 실패 했을때 구문
complete작업을 마친 후에 처리할 구문
  1. jQuery 1.5 버전에 추가된 내용
 var jqy = $.post("example.php", function() {
      alert("success");
    })
    .success(function() { alert("second success"); })
    .error(function() { alert("error"); })
    .complete(function() { alert("complete"); });

jqy는 요청이 완료된 후에도 저장되어있습니다.

따라서 위 코드가 끝난 이후에 또 다른 경우에 대해 함수를 적용 할 수 있습니다.

 예시 : jqy.complete(function() {alert("complete") });

사용법

$.post("a.ku");

  • test.ku에 요청
    $.post("a.ku", {text:"one", text2:"two"});

  • 데이터를 포함하여 a.ku에 요청
    $.post("a.ku", $("#aForm").serialize());

  • 폼 내부 데이터를 보냄.


  • 반환된 결과를 사용하는 방법
     $.post("a.ku", data , function(data){
         alert(data)
     });
    여기서 data는 서버에 적재할 데이터 입니다.
    반환된 데이터는 기존 프로젝트에서 받는 형태로 받는다고 생각하면 됩니다.(string)
profile
Web개발자

0개의 댓글