jQuery.map( array, function )
입력된 배열을 가공하여 새로운 배열로 다시 반환시키는 메서드.
jQuery.merge(arr1,arr2)
두 개의 배열을 병합(merge)하는 메서드.
jQuery.trim(str)
입력값으로 받은 STR문자열의 앞과 뒤의 공백을 제거.
jQuery.parseJSON( json ) (중요)
지정한 json문자열을 JavaScript 객체인 JSON객체로 변환한다. 만약 JSON형식에 위배되는 문자열인 경우에는 예외가 발생된다.
서버에서 json 형태로 응답시 문자로 변환돼서 전달된다. 이럴때 해당 데이터를 사용하기 위해 JSON으로 변환해야하는데 이런 상황에 사용된다.
< 아래는 자바스크립트에서 제동하는 json 변환 메소드이다. >
each(function)
get([index])
사용자 및 시스템에서 발생하는 이벤드들을 jQuery 메서드를 사용하여 처리할 수 있다.
on(events[,selector][,data],function)
이벤트 등록
one(events[,selector][,data],function)
이벤트 등록
trigger(eventType[,extraParameters])
이벤트 강제 발생시키기
off(events[,selector][,function])
이벤트 제거
mouseEnter
mouseOver
웹 페이니에서 에니메이션과 같은 시각적 효과를 보여주기 위하여 제공되는 메서드들이다.
jQuery에서 제공하는 기본적인 에니메이션 효과뿐만 아니라 사용자에 ㅡ이해서 만든 커스텀 에니메이션도 구현이 가능하다.
JavaScript의 Ajax기술을 jQuery 프레임워크에서 사용하는 방법에 관하여 학습한다.
jQuery 프레임워크도 내부적으로는 JavaScript 기술을 사용한다.
HTML 태그의 submit을 사용하여 서버에 값을 전달하게 된다.
이때 사용되는 페이지는 다음 그림과 같이 서버와 통신하고,
response값이 넘어오기 전까지는 무한 대기상태로 존재한다.
Ajax를 이용하면 자바스크립트를 통해서 서버와 통신할 수 있으며, 중요한 것은 서버와 통신하는 중에도 다른 작업을 수행할 수 있다는 것이다.
따라서 Ajax를 사용하면 페이지 하나로 페이지 이동 없이 값을 보내고 받아올 수 있으며 서버와 통신하는 중에도 다른 일을 수행할 수 있다. 이것을 비동기 처리라고 한다.
Ajax를 이용하여 할 수 있는 것 정리 (비동기 처리)
ajax 이용시 xmp, text, json 등을 받아올 수 있다.
XMLHttpRequest라는 비동기 처리를 가능하게 해주는 자바스크립트 객체가 있다.
jQuery를 이용하면 더 간편하게 사용이 가능하다.
다음은 XMLHttpRequest 객체의 주요 프로퍼티(멤버변수)와 메소드이다.
jQuery.ajax( url [,settings]) 가장 많이 쓰는 구문
status 상태번호 저장 404:페이지없음 500:서버오류 200:정상처리
403 -> 브라우저에서 post요청했는데 servlet에서 doPost메서드가 없다면 해당 오류코드가 발생할 수 있음.
주의사항 닫는 괄호들 주석으로 가독성있게 표시하기
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>jQuery HTML Template</title>
</head>
<body>
<button id="a">ajax요청</button>
<div id="result"></div>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#a").on("click",getData);
});
function getData(){
$.ajax(
{
type: "get",
url:"sample01_text.jsp",
dataType: "text", //응답받을 값 타입
success: function(data, status, xhr){
//data:
//status
//xhr :
console.log("success : ", data);
console.log("xhr", xhr.status);
$("#result").text(data);
},
error: function(xhr, status, e){
console.log("error", e);
console.log("xhr", xhr.status);
$("#result").text("데이터를 가져올 수 없습니다.");
}
}
)
}
</script>
</body>
</html>