javascript - JSON 和 jQuery

标签 javascript jquery json

我的这个东西大部分都在工作。我不明白的是,如果我的桌面上有该文件并将其拖到浏览器中,它就可以工作。如果我将相同的文件上传到我的网站并访问它,它在 Firefox 中不会显示任何内容。昨晚它在 Safari 中可以运行,但今天不行。这段代码中真的有什么奇怪的吗? 这是pastie万一将所有这些粘贴到此处不起作用:)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript" charset="utf-8"></script>

<style type="text/css" media="screen">
    body{
        background: #353535;
        color: #fff;
        font-size: 62.5%;
        padding: 10px;
    }
    p{
        font-size: 1.6em;
        font-family: Arial, "MS Trebuchet", sans-serif;
    }
    span{
        font-size: 1.6em;
        font-variant: small-caps;
    }
    ul {
        list-style: none;
    }
    li {
        font-size: 1.6em;
        text-transform: capitalize;
    }
    img{
        float: left;
        margin: 10px;
    }
</style>

<!-- actual api http://api.tinychat.com/designtalk.json -->
<!-- testing file  test.json -->

  <script>
  $(document).ready(function(){
    $.getJSON("http://api.tinychat.com/designtalk.json",
        function(data){

        $('#name').append(data.name);
        $('#topic').append(data.topic);
        $('#broadcast').append(data.broadcaster_count);
        $('#count').append(data.total_count);
        $('#priv').append(data.priv);

if(!data.name)
{
    alert("Room empty!")
}

    var $nameList = $('<ul></ul>');

    $.each(data.names, function (i, val) {
      $('<li></li>').appendTo($nameList).html(val); 
    });

    $('#container').append($nameList);

    $.each(data.pics, function (i, val) {

        $("<img/>").attr("src", val).appendTo("#images");

    });

        });

  });
  </script>
</head>
<body>
    <p id="name"><span>Room Name:</span> </p>
    <p id="topic"><span>Current Topic:</span> </p>
    <p id="broadcast"><span>Number Broadcasting:</span> </p>
    <p id="count"><span>Total in Room:</span> </p>
    <p id="priv"><span>Number with Privileges:</span> </p>

    <div id="container"><span>Who is Online?</span></div>
    <div id="images"></div>
</body>
</html>

最佳答案

在回调函数中,您只需遍历每个元素。假设您想将名称附加到 ID 为 nameDiv 的 div 中,您可以这样做:

$.get("something.aspx", function(json) {  
  for(var i =0; i< json.names.length; i++)
    {
      $('#namesDiv').append(json.names[i]);
    }

关于javascript - JSON 和 jQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1391424/

相关文章:

javascript - 快速验证器 : How to make conditional validations based on other fields?

jquery - 自定义单选按钮需要显示值作为原始输入

javascript - 如何为网页创建弹出式文本区域

json - 为什么json在代码中编码一个空数组会返回null?

javascript - 使用 JavaScript 创建 TicTacToe?

javascript - 使用 d3 进行可刷和可缩放时间线

javascript - 如何从文件列表中删除图像并使用 api 请求将其上传到服务器?

javascript - Moment.js 在未来日期的情况下会错误地转换日期

javascript - 从外部调用 jQuery 插件中的函数

javascript - gzip 内容的 XMLHttpRequest 进度事件问题(FireFox 除外)