从API获取XML值并在网页上显示它

时间:2016-01-23 06:39:47

标签: javascript xml api

所以,这可能会激怒一些(很多)你,但我最近决定使用我非常不完整的JavaScript知识来尝试用一个随意的项目做一些事情。我对JavaScript或任何其他面向对象的语言几乎没有经验,并认为我可以通过在线教程和我在早期项目中学到的东西来拼凑一些东西。

基本上,使用this api,我想获取“委托”值并将其显示在网页上。

到目前为止,这是我所拥有的,而且,正如你可能会收集的那样,它的效果不是很好:

    <script language="JavaScript">
  var Connect = new XMLHttpRequest();

  Connect.open("GET", "https://www.nationstates.net/cgi-bin/api.cgi?region=pluviostan", false);
  Connect.setRequestHeader("Content-Type", "text/xml");
  Connect.send(null);

  var xmlDoc= Connect.responseXML;

  var Region= xmlDoc.childNodes[0];

  var Delegate= Region.getElementsByTagName("Delegate");

  document.write("<p></p>");
   document.write(Delegate[0].textContent.toString());
  }
</script>

现在看来,什么都没有显示出来。我得到了nadda。有人可以帮忙吗?

我意识到,毫无疑问,这是“在你走路之前试图跑步”的情况,但此刻我没有时间积极尝试学习,而我只想过无论如何,做一些非常具体的事情。但请放心,一旦我有更多时间,我就会开始花时间学习如何正确编码,而不是将这些可怕的科学怪人的东西拼凑起来。

1 个答案:

答案 0 :(得分:0)

你可以使用jQuery。顺便说一句Region.getElementsByTagName("Delegate");“代表” - 应该被大写

$(function(){
  $.ajax({
    type: "GET",
    url: "http://www.nationstates.net/cgi-bin/api.cgi?region=Pluviostan&q=delegate",
    dataType: "xml",
    success: function(data){    
      var xml = $(data);
      var delegate  = xml.find("DELEGATE");
      $("#result").html(delegate.text()); 
    }
   });
});


  
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

<p id="result">
</p>