[英]Can't show looped JSON data on a div
在我使用 fetch 從模擬 API 中提取數據后,我設法循環數據並將其發布到我的控制台上。 我無法將數據發布到要在頁面上顯示的 div 上。 幫助將不勝感激。 提前致謝!
$(document).ready(function() {
const fetchData = async() => {
const response = await fetch('https://n161.tech/api/dummyapi/user?limit=5&page=1');
const data = await response.json();
// items = JSON.stringify(data);
console.log(data);
for (var i = 0; i < data.data.length; i++) {
var obj = data.data[i];
console.log(obj);
}
}
fetchData();
});
html 供參考(尚未使用 CSS 設計
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Pictures&users</title>
<link rel="stylesheet" href="main.css">
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
<!-- <script scr="fetch.js"></script> -->
<script src="fetch.js"></script>
</head>
<body>
<div class="container-fluid">
<div class="row">
<div class="col div1">Column</div>
<div class="col">Column</div>
</div>
</div>
</body>
</html>
基本上,我希望其中一個 DIV 從獲取的 JSON 中發布某些值。 另一個將用於硬編碼圖像。 我當然會添加
我需要特定的值。 我在香草 JS 中無法實現這一點。
JSON 用於參考
{
"data": [
{
"id": 6,
"nameTitle": "ms",
"firstName": "Madeleine",
"lastName": "Brown",
"image": "https://randomuser.me/api/portraits/women/65.jpg"
},
{
"id": 7,
"nameTitle": "mr",
"firstName": "Akseli",
"lastName": "Ruona",
"image": "https://randomuser.me/api/portraits/men/90.jpg"
},
{
"id": 8,
"nameTitle": "ms",
"firstName": "Jennifer",
"lastName": "West",
"image": "https://randomuser.me/api/portraits/women/53.jpg"
},
{
"id": 9,
"nameTitle": "mrs",
"firstName": "Carlucia",
"lastName": "Das neves",
"image": "https://randomuser.me/api/portraits/women/52.jpg"
},
{
"id": 10,
"nameTitle": "mrs",
"firstName": "Silviane",
"lastName": "Peixoto",
"image": "https://randomuser.me/api/portraits/women/76.jpg"
}
],
"total": 5,
"page": 1,
"limit": 5
}
基本思想是將 html 構建為字符串,然后將 append 構建為 html ,因此您需要將id
添加到主 div
<body>
<div class="container-fluid">
<div id="row" class="row">
<div id="test" class="col div1">Column</div>
<div class="col">Column</div>
</div>
</div>
</body>
然后更新你的js
$(document).ready(function() {
const fetchData = async() => {
const response = await fetch('https://n161.tech/api/dummyapi/user?limit=5&page=1');
const data = await response.json();
// items = JSON.stringify(data);
console.log(data);
div = document.getElementById('row');
for (var i = 0; i < data.data.length; i++) {
var str ='<div>'+data.data[i].nameTitle +' '+data.data[i].firstName +' '+ data.data[i].lastName+ '</div>';
str +='<img src="'+data.data[i].image+'" alt="'+data.data[i].firstName + data.data[i].lastName+'">';
div.insertAdjacentHTML( 'beforeend', str );
}
}
fetchData();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.