[기타묻고답하기 이용안내]

//서버에 XML관련 데이터보내는 함수
function sendXMLFormData(argFormData)
{
 xmlHttp.open("POST", "/comm/responseCodeXML.jsp", false);
 xmlHttp.onreadystatechange = callBack;
 xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

 xmlHttp.send(argFormData);
}

//서버응답 콜백함수
function callBack()
{
 if(xmlHttp.readyState == 4)
 {
  if(xmlHttp.status == 200)
  {

   var xmlDoc = xmlHttp.responseXML;
   gradeListNode = xmlDoc.documentElement; //루트(codeList)노드
   gradeNode = gradeListNode.firstChild; //codes노드

   for(i=0; i<gradeListNode.childNodes.length; i++)
   {
    codeNode = gradeNode.firstChild; //첫번째노드
    codeValue =  codeNode.firstChild.nodeValue

    nameNode = codeNode.nextSibling; //동일레벨에서의 다음노드
    nameValue =  nameNode.firstChild.nodeValue

    makeSelectOption(codeValue, nameValue);

    gradeNode = gradeNode.nextSibling; //다음 code노드
   }
  }
 }
}

 

 

 

 

 

 

 

 

 

------------------------

 

익스플로러에서는

var xmlDoc = xmlHttp.responseXML;
이게 잘 들어와요

 

근데 크롬에서는 null이 뜨네요... 아시는분 계실까요..?

한가닥 희망이라도 걸어봅니다.

플리즈~~ ㅠ

엮인글 :

나우수

2010.12.30 15:49:52
*.236.3.225

 if (window.XMLHttpRequest) { // IE7+, Firefox, Chrome, Opera, Safari 에서 사용
        xmlhttp=new XMLHttpRequest();
    } else { // IE6, IE5 에서 사용
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }

나우수

2010.12.30 15:54:23
*.236.3.225

아주 간단하게만 말씀드린것이고, ajax 사용을위한 XHR 객체를 얻어오는 방법은 크게

ie7이하 버전, ie8버전, 그외 브라우져  방식으로 나뉩니다.  헝글에 질문하지 마시고 구글링을 해보시면

 

정말 쉽게 나올 내용들이구요..   요즘엔 자바스크립트 라이브러리가 대중화 되어있기때문에 XHR 객체를

저런식으로 직접 생성해서 가져다 쓰는 경우도 드뭅니다.

 

쉽게 ajax를 사용할수 있도록 도와주는 라이브러리로는 요즘 가장 주목받는 jQuery 가 있고. 그 외에 prototype.js 나

DWR 등이 있습니다. 이기회에 공부하여 적용해 보시면  아주 쉽게 ajax 사용이 가능합니다.

나우수

2010.12.30 15:56:35
*.236.3.225

첫번쨰 소스 보단 이게 조금 낫겠습니다.

 

var request = null;

function createRequest(){

   try{

request = new XMLHttpRequest(); // 요청객체를 XMLHttpRequest로 생성한다.

}catch(trymicrosoft){  //익스플로러 인가 여부를 판단해서 그에 맞는 객체를 생성한다.

try{

request = new ActiveXObject("Msxm12.XMLHTTP");

}catch(othermicrosoft){

try{

request=new ActiveXObject("Microsoft.XMLHTTP");

}catch(failed){

request = null;

}

}

}

if(request == null){

alert("Error creating request object!");

}

}

 

사실 이것보다도 더 자세히 정의하셔야 합니다.

보솜이

2010.12.30 16:07:12
*.241.100.106

답변 감사합니다.

허나.. 그부분은 제가 글내용에 안썼을뿐 소스에 이미 정의되어있습니다.

폭풍검색해보니 읽어오는 파일이 xml 형식이라고 정의를 해줘야한다는데

정의를 해줘도 마찬가지라서 아직 해결이 안됬어요.

하 뭐 다른 이유는 없을까요 ㅠ

나우수

2010.12.30 16:23:29
*.236.3.225

제가 질문을 잘못 봤군요 객체 생성이 아니라 응답에 관한 질문이었네요

 

파이어폭스계열은 xml 파싱하는 방법이 틀립니다.

 

간단하게 해결하는 방법으로는.

 

01 var xmlDom = null;

02 var xmlHttp = null;
03 if (window.XMLHttpRequest)
04 {
05     xmlHttp = new XMLHttpRequest();
06 }
07 else
08 {
09     xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
10 }
11 xmlhttp.open("get", filename, false);
12 xmlhttp.send("");

13

xmldom = xmlHttp.responseXML;

나우수

2010.12.30 16:24:39
*.236.3.225

혹은 아예 selectNode를 사용할수 있게 재정의 하는 방법이 있습니다(링크참조)

http://www.mungchung.com/xe/?mid=protip&listStyle=gallery&category=3007&document_srl=12694

 구글에서 파폭 responseXML같은 식으로 검색해보시면 관련 자료가 많이 있습니다.

나우수

2010.12.30 16:28:22
*.236.3.225

좀더 근본적인 해결법은 데이터타입으로 XML을 사용하지마시고, json 형식으로 사용시면다면 브라우저등의 관계없이 좀더 편리하게 데이터를 처리할 수 있습니다.  이역시, jQuery 등의 라이브러리를 사용하시면 더욱 간편해 집니다..

ㅇㅇ

2010.12.30 18:08:32
*.221.134.210

책에서 잠깐 읽어보고 지나간코드라 정확한 답변은 못드리겠지만 초창기 코드같네요..

 

jquery ajax부분만 잠깐 읽어보시고 적용하시면 그런 골치아픈 문제는 신경쓰지 않아도 될듯하네요..

슭훗

2010.12.30 18:16:50
*.226.112.1

글을 늦게 봤네요. jqeury 추천합니다.


시간나시면 책한권 사시거나 구글링을 통해서 한번 써보세요. 자바스크립트를 사용하는 개발자라면


이제 유용한정도가 아니라 필수 라이브러리라고 생각하는 1인.



List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 [기타묻고답하기 게시판 이용안내] [1] Rider 2017-03-14 54276

여러분들은 어떻게 하시겠습니까? [22]

여기 개발자분들 계시죠? [9]

작은 선물 추천받아요 [8]

헝글 가입했을때 번호요~ [2]

  • 아쿵
  • 2010-12-30
  • 조회 수 652

속도위반 법칙금 질문.. [12]

렉스턴 요즘 반값 할부 하던데... [3]

1월 1일 해돋이 추천 부탁드려요 [6]

12월 31일 서울 [3]

지금 혹시 뉴욕에서 거주하고 계신분있나요?? [2]

대형 차량 보유자 자녀 보육료 지원 제한 잘아시는 분~??? [4]

  • 가장
  • 2010-12-30
  • 조회 수 905

죽인다고 협박 당해본적 있으세요??????????? [4]

  • 11
  • 2010-12-30
  • 조회 수 1278

캐나다에서 장비 사올때 [8]

꼬리뼈 빨리 낫는 비법 좀 공유해주세요ㅠ [6]

  • 2Fast
  • 2010-12-30
  • 조회 수 699

"부금" 이란말이 무슨 뜻인가요? [6]

  • 2010-12-30
  • 조회 수 4322

시계 가죽 밴드 추천해주세요. [2]

  • hare
  • 2010-12-30
  • 조회 수 1107

원두커피 가루 방향제 사용하려고 할때 [2]

  • 독거
  • 2010-12-30
  • 조회 수 2206

양지리조트 다니시는 분들 [1]

  • 2010-12-30
  • 조회 수 515

요즘 차량이 맘에 안드신다고 하시는 분들에게 궁금합니다~ ㅎ [18]

OUTLOOK 2007 에서 프린트 하기 [2]

  • outlook
  • 2010-12-30
  • 조회 수 1520

혹시 GMT Master II 차고 계신 분 있으신가요?? [1]