HTML로 iPhone 응용 프로그램에서 작업하고 있습니다. 원격 서버에 저장된 xml에서 콘텐츠를 검색하고 해당 콘텐츠를 목록에 표시해야합니다. xml 파일이 코드와 같은 서버에 저장 될 때다른 서버에서 Javascript로 XML을 읽을 때 오류가 발생했습니다.
이미이 달성 :
<body>
<div id="container">
<div id="header">
<h1><a href="./">BurgerFast</a></h1>
<p>Menú</p>
<div>
<div id="nav">
<ul>
<span id="lista"></span>
</ul>
</div>
<div id="footer">
<ul>
<li><a href="/assets/cl.png">Acerca de</a></li>
<li><a href="/assets/cl.png">Ayuda</a></li>
</ul>
</div>
</div>
</div>
</div>
<script type="text/javascript">
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","assets/note.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
var item = xmlDoc.getElementsByTagName("item")
var myElems = "";
for(i = 0 ; i < item.length ; i++){
myElems = myElems + "<li><a>" + item[i].getElementsByTagName("name")[0].childNodes[0].nodeValue + "</li></a>";
}
document.getElementById("lista").innerHTML = myElems;
</script>
</body>
지금까지 아무 문제. 동일한 서버에서 파일을 호스팅 할 때 멋지게 작동하지만 다른 서버의 xml을로드 할 수 있기를 원합니다. 내가 줄 변경하는 경우 :
xmlhttp.open("GET","assets/note.xml",false);
을이 itlike 떠나 :
xmlhttp.open("GET","http://173.236.56.146/~crayonli/xml/note.xml", true);
를 그것이 같은 빌어 먹을 XML, 난 그것을 얻을하지 마십시오 해당 xmldoc가 null입니다 때마다 나에게 말한다.
내 실수는 어디서 볼 수 없습니까? 누군가 말해 줄 수 있니?
http://www.w3.org/Security/wiki/Same_Origin_Policy – Andreas
로 John_doe는 다른 서버에서 Ajax를 호출 할 수 있다고 지적했다. 하지만이 http://en.wikipedia.org/wiki/JSONP – jcubic
하하, n00b 실수로 jsonp를 사용할 수 있습니다. 고맙습니다. – Ivancho