在下面的简单代码片段中,我从php页面获取JSON响应,然后尝试对其进行迭代并警告每个JSON对象的名称字段。但是,它不会发出任何警报。

<html>
<head>
  <title>AJAX DB</title>
</head>

<body>

  Name: <input type="text" id="name">
  <input type="submit" id="name-submit">
  <div id="formatted-data"></div>
  <div id="name-data"></div>

  <script type="text/javascript" src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
  <script >

  $('input#name-submit').on('click',function(){
    var name = $('input#name').val();

    if($.trim(name) != ''){
      $.post('appservice.php', {search_key: 'users_search', search_value:  name}, function(data){
        //$('div#name-data').text(search_data);
        $.each(data, function(i, obj) {
          alert(obj.name);
        });
      });
    }
  });

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


样本JSON

[
  {
    "id": 18927441,
    "id_str": "18927441",
    "name": "IGN",
    "screen_name": "IGN",
    "location": "San Francisco, CA"
  }
]

最佳答案

JSON仍为JSON字符串形式时,您无法使用JSON。您需要解析它才能使用它。尝试:

data = JSON.parse(data);

关于javascript - 使用jQuery迭代从Web服务接收的JSON,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33592329/

10-10 18:40
查看更多