2013-07-24 7 views
0

java-script를 사용하여 XML 파일을 구문 분석하려고합니다. 튜토리얼에 따르면 나는 루트 요소를 얻기 위해 document.documentElement을 사용해야한다는 것을 발견했다.document.documentElement 함수가 올바른 결과를 표시하지 않습니다.

구문을 사용하지만 해당 구문에서 반환 된 값을 표시하려고 시도하면 브라우저에 [object HTMLHtmlElement]이 표시됩니다.

제 질문은 : (1) 웹 브라우저에 [object HTMLHtmlElement]이 표시되는 이유는 무엇입니까? (2) 아래 게시 된 XML 파일에 따르면, I 출력이 내가 사용하는 코드 (자바 스크립트) 및 XML 파일을 검색 할 수 있습니다 rootElement = document.documentElement;

사용 후 를 할 무엇을 기대할한다.

자바 스크립트

function findWriter() 
{ 
     var schriftstellerKnoten, SpracheKnoten; 
     var FuellerKnoten, DichtungKnoten, Anzeige, rootElement; 

    rootElement = document.documentElement; 
    document.write(rootElement);  
    } 

XML 파일 :

<?xml version="1.0" ?> 
<Schriftsteller> 
    <Englischsprache> 
     <Dichtung> 
     <fueller> 
     <name>Jane Austin</name> 
      <name>Rex Stout</name> 
      <name>Dashiell Hammett</name>  
    </fueller> 
    </Dichtung> 
    </Englischsprache> 
</Schriftsteller> 
+0

을 (케이스, 노드). – melancia

+0

Javascript 스 니펫을 디버그하고이 객체 속성을 확인하려고 했습니까? – melancia

+1

부모 페이지의 documentElement (HTML)를 'rootElement' 변수로 가져옵니다. XML 파일을받는 방법에 대한 코드를 게시 할 수 있습니까? 먼저 XML 파일을 가져와야합니다. – Harry

답변

2

document.documentElement는 당신에게 당신의 자바 스크립트가 존재하는 페이지의 루트 HTML 태그를 얻을 것이다. 가져 오기 및 XML 콘텐츠를 표시하려면

, 당신은 XML 문서에 액세스 할 수 있습니다 다음과 같은 XML 파일을로드하는 데 사용해야합니다 다음이에서 객체를 얻고 있기 때문에 단순히

function findWriter() 
{ 
    var schriftstellerKnoten, SpracheKnoten; 
    var FuellerKnoten, DichtungKnoten, Anzeige, rootElement; 

    if (window.XMLHttpRequest){ 
    xhttp=new XMLHttpRequest(); //For non IE browsers 
    } 
    else { // for IE 5/6 
    xhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
    xhttp.open("GET","test.xml",false); 
    xhttp.send(); 
    xmlDoc=xhttp.responseXML; //Fetch the XML file contents 

    var nameEl = xmlDoc.documentElement.getElementsByTagName("name"); //Get all <name> tags in it 
    for (i=0; i<nameEl.length; i++){ 
    document.write("Name" + i + ": " + nameEl[i].firstChild.nodeValue + "<br/>"); //write names 
    } 
} 
+0

예, 내가 제안한대로 코드를 수정했지만 작동하지 않습니다. –

+0

무엇이 오류입니까? 어느 브라우저 & 버전? 바람둥이 같은 서버에서 코드를 실행하고 있습니까? 당신이 있는지 확인하십시오. – Harry

+0

그냥 결과를 생성하지 않습니다 .. 나는 크롬을 사용하고 있습니다. –

관련 문제