【发布时间】:2021-03-15 18:05:56
【问题描述】:
我正在尝试使用 ajax jquery 循环遍历 json 响应,但无法显示结果。
这是我使用的代码:
data.php
function platformsList(){
$query = "SELECT id, name, slug, icon FROM `platforms` ORDER BY id ASC";
$statement = $GLOBALS['PDO']->prepare($query);
$statement->execute();
$data = array();
while ($row = $statement->fetch(PDO::FETCH_ASSOC)) {
$data[] = $row;
}
return json_encode($data);
}
if(isset($_GET['platforms']) AND $_GET['platforms'] == 'platforms'){
$platforms = platformsList();
$response = json_decode($platforms);
print_r($response);
}
jquery:
$(document).ready(function(){
$.ajax({
url: "core/data.php",
method: "GET",
data :'platforms=platforms',
dataType: 'json',
contentType: false,
cache: false,
processData: false,
success: function(response) {
for(var i = 0; response.length < i; i++) {
$('.platformsList').html('<li>'+response.name+'</li>');
}
}
})
});
我想要的是在下面的 div 中显示结果:
<div>
<ul class="platformsList"></ul>
</div>
编辑:
当我调试时,我得到了这个结果:
Array
(
[0] => stdClass Object
(
[id] => 1
[name] => Platform 1
[slug] => dates
[icon] => dates.webp
)
[1] => stdClass Object
(
[id] => 2
[name] => Platform 2
[slug] => honey
[icon] => honey.webp
)
.
.
... etc
【问题讨论】:
-
这会以什么方式失败?调试的时候
response变量的内容是什么? -
我已经编辑了帖子
-
可能需要检查无序列表的正确格式
<ul class="platformsList"></li>?? -
大声笑,只是一个错字
-
这里的问题是我无法在html页面中显示结果