【问题标题】:How to display data from a JSON array using jQuery如何使用 jQuery 显示 JSON 数组中的数据
【发布时间】:2012-04-04 09:13:36
【问题描述】:

如何从我的 php 脚本返回的 JSON 中获取数组数据?

PHP 代码:

<?php
//connects to database
include 'connect.php';
$callback = $_GET['callback'];

$query = mysql_query("SELECT * FROM users");
$rows = array();
while($r = mysql_fetch_assoc($query)) {
   $rows[] = $r;
}

$out_string = json_encode($rows);

print $callback.'('.$out_string.');';
?>

上面的 php 代码将用户表的所有行放入一个数组中,并对其进行 JSON 编码。然后将其发送回此脚本:

$.getJSON(domain_path + 'generate.php?table=' +  tbname + '&callback=?', function(data) {
});

如何显示发回的 JSON 数组中的每一行?

例如要发回的数据是:

([{"name":"user1","link":"google.com","approve":"true"},{"name":"user2","link":"yahoo.com","approve":"true"},{"name":"user3","link":"wikipedia.com","approve":"true"}]);

我将如何使用 javascript (jQuery) 像这样显示它:

名称:User1,链接:google.com,批准:True 名称:User2,链接:yahoo.com,批准:True 名称:User3,链接:wikipedia.com,批准:True

【问题讨论】:

    标签: php jquery html json


    【解决方案1】:

    当您完成print $callback.'('.$out_string.');'; 时,您已经破坏了 JSON 格式的字符串。而是以数组形式发回,然后循环遍历您的行并显示数据。

    $out_string = json_encode(array('callback' => $callback, 'rows' => $rows));
    

    【讨论】:

    • 如果 OP 使用 JSONP 进行跨域 AJAX 调用 vi jQuery,他原来的 print 行是正确的。我昨天不得不使用完全相同的格式来实现跨域调用
    【解决方案2】:

    你应该这样做

    function(data) {
        $.each(data, function(){
            $('#result').append('<p>Name:'+this.name+' Link:'+this.link+' Approve'+this.approve+'</p>');
        });
    }
    

    在这里摆弄http://jsfiddle.net/hUkWK/

    【讨论】:

      【解决方案3】:
      $.getJSON(domain_path + 'generate.php?table=' +  tbname + '&callback=?', function(data) {
        $.each(data, function(i, item) {
          $("#mycontainer").append("<p>Name: " + item.name + "</p>");
          $("#mycontainer").append("<p>Link: " + item.link + "</p>");
        });
      });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-10-29
        • 1970-01-01
        • 1970-01-01
        • 2018-05-09
        • 2019-02-28
        • 2013-08-05
        • 2018-02-22
        • 1970-01-01
        相关资源
        最近更新 更多