javascript - jquery JSON 不从 jQ AJAX 请求解析

标签 javascript php jquery ajax json

我是 jQuery 的新手,我的 JSON 数据似乎没有按照我期望的方式解析。

所以我通过 json_encode($var) 创建了我的数据;在 PHP 中,这似乎工作正常:

{"id":"7","0":"7","ip":"86.152.117.159","1":"86.152.117.159","proxyip":"86.152.117.159","2":"86.152.117.159","ping":"1","3":"1","time":"03:39:17","4":"03:39:17"}{"id":"6","0":"6","ip":"86.152.117.159","1":"86.152.117.159","proxyip":"86.152.117.159","2":"86.152.117.159","ping":"1","3":"1","time":"03:36:20","4":"03:36:20"}

(这是通过 jQuery 的 AJAX 从同一服务器/域上的单独 URL 导入的)。

但是当我使用这段代码尝试导入它时:

$.ajax({url:"load.php",success:function(result){
            var obj = jQuery.parseJSON(result);
            $(".response").html(obj.id);
        }});

然后检查我的控制台,我得到“Uncaught SyntaxError: Unexpected token {”,它指向 index.php 中的“第 1 行”——注意我没有使用外部 JS 文件。

我不知道我做错了什么以及我应该如何解决这个问题以便我可以在页面上(即在表格中)以非 json 形式显示数据

非常感谢任何帮助!

编辑:

这是我的 load.php 文件:

try {
    $db = new PDO("mysql:host=$mysql_host;dbname=$mysql_db", $mysql_user, $mysql_pass);
} catch(PDOException $e) {
    $e->getMessage();
}

$update = "SELECT * FROM traffic";
foreach ($db->query($update) as $user) {
    echo json_encode($user);
}

最佳答案

你不能调用 echo json_encode(...) 两次。将所有结果放入一个数组中,并对其进行编码。

$result = array();
foreach ($db->query($update) as $user) {
    $result[] = $user;
}
echo json_encode($result);

然后在 Javascript 中,你需要一个循环来读出它们:

$.ajax({url:"load.php",success:function(result){
        var obj = jQuery.parseJSON(result);
        var ids = obj.map(function(el) {
            return el.id;
        });
        $(".response").html(ids.join(' '));
    }
});

关于javascript - jquery JSON 不从 jQ AJAX 请求解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27660889/

相关文章:

javascript - 运行 AJAX 的选择出现奇怪的 IE8 问题

javascript - Rails 3 中的表单和表单验证 : build your own vs Formtastic vs SimpleForm vs other gems?

php - 尝试使用 jquery .load 根据表单中的特定输入将 PHP mysql 行打印到 div 中

javascript - 如何禁用 Kendo UI NumericTextBox 上的点?

javascript - jQuery printElement 不打印整个图像

javascript - 在 AngularJS 中将 "$routeParams"传递给服务的最佳方法是什么?

javascript - 递归抓取并以异步方式写入文件

PHP 代码缓存和优化

php - MySQL 将用户插入到另一个用户拥有的组中

javascript - 简化 keyup 输入的一些 jQuery 代码