如何使用jquery获取数据并动态填充网页

时间:2013-04-17 14:26:30

标签: javascript jquery html json

我想使用jquery将数据存储在mysql中并动态填充在网页上。 我试过这段代码,但它没有用。

<html>
<head>
  <script src="jquery-1.7.2.js"></script>
</head>
<body>
<pre>
<script>
  var url = "https://natiweb-natiweb.rhcloud.com/game.php";

  $.getJSON(url,function(data){
    $.each(data,function(i,user){
      alert("inside JSON");
      alert(user.appname+"\n"+user.applink);
      var a = document.createElement('a');
      var linkText = document.createTextNode(user.appname);
      a.appendChild(linkText);

      a.title = linkText;
      a.href = user.applink;
      document.body.appendChild(a);
      var b = document.createElement('br');
      document.body.appendChild(b);

    });
  }
);


</script>
</pre>
</body>
</html>

它永远不会执行getJSON查询。我不知道什么是错的。 “内部JSON”没有打印。我尝试使用专用的js文件编写相同的脚本代码并且它有效。我想让它在body中工作,因为我必须通过从mysql获取链接来动态创建链接。

2 个答案:

答案 0 :(得分:1)

  • 首先,在文档准备好后执行代码:

     $(function(){
        /* your code */
     });
    

     $(document).ready(function(){
        /* your code*/
     });
  • 其次,使用$ .ajax,传入错误回调以检查是否有任何例外。

答案 1 :(得分:0)

+1 adeneo - 如果你在开发者控制台中查看chrome,你会发现你收到了CORS错误。除此之外,您的代码应该可以工作。返回的JSON很好,你的代码似乎用它做了正确的事情,但你没有得到JSON。

请参阅此SO XmlHttpRequest error: Origin null is not allowed by Access-Control-Allow-Origin中的答案,以获得有关决议的详细解释。