티스토리 뷰

반응형

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>Insert title here</title>

<script type="text/javascript">

var xmlHttp;

function req(){

console.log(xmlHttp);

xmlHttp = new XMLHttpRequest(); //생성을 함

xmlHttp.onreadystatechange = callBack; // on으로 들어가니까 이벤트 핸들러임 서버가 응답을 줄때 언제줄지 모름 서버에서 응답이 오면 콜백호출

xmlHttp.open("GET", "emp.xml", true);

xmlHttp.send(null);

}

function callBack(){

if(xmlHttp.status == 200){ //200과 4는 퍼펙트

if(xmlHttp.readyState == 4){

var str = xmlHttp.responseXML; //얘는 문자열

//console.log(data);

//String --> Object 변환 작업 필요

//var obj = eval('('+str+')'); //객체로 변환

console.log("str : "+str); // str은 document 객체

var empids = str.getElementsByTagName("empid");

var emnames = str.getElementsByTagName("emname");

var salarys = str.getElementsByTagName("salary");

for( var x in empids){

console.log(empids[x].innerHTML); // innerHTML태그 안에값 불러오기

console.log(emnames[x].innerHTML);

console.log(salarys[x].innerHTML);

}

}

}

}//end callBack

</script>

</head>

<body>

<button onclick="req()">요청</button>

<div id="result"></div>

</body>

</html>

=============================== emp.xml ============================

<person>

<emp>

<empid>1111</empid>

<emname>홍길동</emname>

<salary>4500</salary>

</emp>

<emp>

<empid>2222</empid>

<emname>이순신</emname>

<salary>5000</salary>

</emp>

</person>

반응형

'Memo' 카테고리의 다른 글

골프 내추럴 그립(Natural grip)  (0) 2022.09.25
골프 니 액션(Knee action)  (0) 2022.09.25
고혈압에 대해서  (0) 2022.09.24
혈압작용  (0) 2022.09.24
성공 成功 success 이란?  (0) 2022.09.18