2014-11-23 2 views
0

API로 생성 된 XML 파일을 oliverpwilson.github.io/tubular에있는 (현재) 정적 웹 페이지와 연결하려고합니다. <span>에서 어떤 일이 일어나는지 확인하기 위해 <header>에서JavaScript를 사용하여 HTML 콘텐츠를 외부 XML 파일의 콘텐츠로 대체 하시겠습니까?

<div> 
    <span id="content">No Content Yet</span> 
</div> 

일부 자바 스크립트 : I는 HTML과 같이 대략 구조 파일이

<script> 
     function myFunction() { 
     document.getElementById("content").innerHTML = "Some Content Now!"; 
</script> 

<body onload="myFunction">은 그래서 부하에 트리거합니다.

이 모두 작동합니다.

내가 원하는 것은 URI (http://cloud.tfl.gov.uk/TrackerNet/LineStatus)에서 호스팅되는 API (Transport API for London API)로 생성 된 외부 XML 파일을 사용하고 자바 스크립트를 사용하여 정보를 파싱 한 다음 해당 정보를 사용하여 업데이트합니다 어떤 따옴표 안에 내

document.getElementById("content").innerHTML = "Some Content Now!";

표시, 즉 교체 "이제 일부 내용을!" 특정 태그 안에 존재하는 XML 파일을 생성합니다 (예 : <Status Description="Good Service">). "Some Content Now!" "좋은 서비스"로 대체 될 것입니다.

나는 광범위하게 이해되기를 바랍니다. 어떤 도움을받을 수 있을지 모르겠다.

+0

참조 : https://developer.mozilla.org/en-US/docs/Web/Guide/Parsing_and_serializing_XML –

+0

입력/출력이 복잡 해지면 XSLT는 들여다 볼만한 것이있다. –

답변

1

귀하의 웹 사이트를 귀하가 보았습니다. 당신이 자바 스크립트에서 원하는 직접적으로 어떤 기회에 옵션이 다음으로

div xxx-line 
|--- div details 
     |--- div status 
     |--- div details 

: 당신은 그런 요소가있다, 이러한 요소는 다음과 같은 구조를 가지고있다. 'status'또는 'details'의 ID를 통해 호출하거나 'div xxx-line'클래스를 살펴볼 수 있습니다.

다음과 같은 코드를 읽을 수있는 XML :

//Get status 
var status = xmlDoc.getElementsByTagName("status")[0].childNodes[0].nodeValue; 

//Get details 
var details = xmlDoc.getElementsByTagName("status")[0].childNodes[0].nodeValue; 

당신이를 대체 할 수있는 변수 상태 나 세부 사항 :

if (window.DOMParser) 
{ 
    parser=new DOMParser(); 
    xmlDoc=parser.parseFromString(txt,"text/xml"); 
} 
else // Internet Explorer 
{ 
    xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); 
    xmlDoc.async=false; 
    xmlDoc.loadXML(txt); 
} 

그리고 이와

, 당신은 노드에서 정보를 얻을 수 div의 내용

관련 문제