Я пытаюсь преобразовать данные внешнего файла JSON в таблицу HTML, но ничего не отображается. Я получаю все данные в консоли, но не в таблице HTML.
Вот мой файл JSON. results.json
{
"SearchResult": {
"Items": [
{
"ASIN": "B07RF1XD36",
"BrowseNodeInfo": {
"BrowseNodes": [
{
"ContextFreeName": "Traditional Laptop Computers",
"DisplayName": "Traditional Laptops",
"Id": "13896615011",
"IsRoot": false,
"SalesRank": 1
},
{
"ContextFreeName": "Computers Features",
"DisplayName": "Computers Features",
"Id": "13900871",
"IsRoot": false
}
]
},
"DetailPageURL": "https:\/\/www.amazon.com\/dp\/B07RF1XD36?tag=extdemo-20&linkCode=osi&th=1&psc=1",
"Images": {
"Primary": {
"Small": {
"Height": 49,
"URL": "https:\/\/m.media-amazon.com\/images\/I\/41vMYgD92xL._SL75_.jpg",
"Width": 75
}
}
},
"ItemInfo": {
"ManufactureInfo": {
"ItemPartNumber": {
"DisplayValue": "A515-43-R19L",
"Label": "PartNumber",
"Locale": "en_US"
},
"Model": {
"DisplayValue": "A515-43-R19L",
"Label": "Model",
"Locale": "en_US"
},
"Warranty": {
"DisplayValue": "One-year International Travelers Limited Warranty (ITW)",
"Label": "Warranty",
"Locale": "en_US"
}
},
"Title": {
"DisplayValue": "Acer Aspire 5 Slim Laptop, 15.6 inches Full HD IPS Display, AMD Ryzen 3 3200U, Vega 3 Graphics, 4GB DDR4, 128GB SSD, Backlit Keyboard, Windows 10 in S Mode, A515-43-R19L",
"Label": "Title",
"Locale": "en_US"
}
},
"Offers": {
"Listings": [
{
"Id": "nVBohxZFi65ksaPEjy8Hq1UFaPdN51ylhVaWNiVEIZ8zCoF1qGAc%2BuRojRgqhi7LQK2VpR5l3KRF%2B5PlHzcbLjowFIeK9mK5SwmlWfNrQfZRvr8TCay%2BTQ%3D%3D",
"Price": {
"Amount": 313.68,
"Currency": "USD",
"DisplayAmount": "$313.68",
"Savings": {
"Amount": 36.31,
"Currency": "USD",
"DisplayAmount": "$36.31 (10%)",
"Percentage": 10
}
},
"ViolatesMAP": false
}
]
}
},
{
"ASIN": "B07RF2123Z",
"BrowseNodeInfo": {
"BrowseNodes": [
{
"ContextFreeName": "Traditional Laptop Computers",
"DisplayName": "Traditional Laptops",
"Id": "13896615011",
"IsRoot": false,
"SalesRank": 11
},
{
"ContextFreeName": "Computers Features",
"DisplayName": "Computers Features",
"Id": "13900871",
"IsRoot": false
}
]
},
"DetailPageURL": "https:\/\/www.amazon.com\/dp\/B07RF2123Z?tag=extdemo-20&linkCode=osi&th=1&psc=1",
"Images": {
"Primary": {
"Small": {
"Height": 47,
"URL": "https:\/\/m.media-amazon.com\/images\/I\/41Ty8q6KoaL._SL75_.jpg",
"Width": 75
}
}
},
"ItemInfo": {
"ManufactureInfo": {
"ItemPartNumber": {
"DisplayValue": "A515-54-51DJ",
"Label": "PartNumber",
"Locale": "en_US"
},
"Model": {
"DisplayValue": "A515-54-51DJ",
"Label": "Model",
"Locale": "en_US"
},
"Warranty": {
"DisplayValue": "One-year International Travelers Limited Warranty (ITW)",
"Label": "Warranty",
"Locale": "en_US"
}
},
"Title": {
"DisplayValue": "Acer Aspire 5 Slim Laptop, 15.6 Inches FHD IPS Display, 8th Gen Intel Core i5-8265U, 8GB DDR4, 256GB SSD, Fingerprint Reader, Windows 10 Home, A515-54-51DJ",
"Label": "Title",
"Locale": "en_US"
}
},
"Offers": {
"Listings": [
{
"Id": "nVBohxZFi65ksaPEjy8Hq0kLXhXYwgY3gCxMbf4rvHdUeVUY2qUveuPD8QSHDnrZUh2QVLQx7Ug1PQH%2FCPgAvjITt7ljnFuTnduiZKV31RckMDUmYejQAQ%3D%3D",
"Price": {
"Amount": 529.99,
"Currency": "USD",
"DisplayAmount": "$529.99"
},
"ViolatesMAP": false
}
]
}
}
]}}
Этот файл JSON создан на основе рекламного API продукта Amazon.
Вот мой JavaScript файл background.js
$(document).ready(function(){
$.getJSON("results.json", function(data){
console.log(data);
var products = '';
$.each(data.Items, function(key,value){
products +='<tr>';
products +='<td>'+value.ASIN+'</td>';
products +='<td>'+value.BrowseNodeInfo/BrowseNodes/0/SalesRank+'</td>';
products +='<td><a href="'+value.DetailPageURL+'">'+value.ItemInfo/Title/DisplayValue+'</a></td>';
products +='<td>'+value.Offers/Listings/0/Price/DisplayAmount+'</td>';
products +='<td><img src="'+value.Images/Primary/Small/URL+'"></td>';
products +='</tr>';
$("#tablebody").append(products);
});
});
});
Я пытаюсь загрузить только определенные данные из файла JSON в таблицу html, например, ранг, название, код ASIN и т. Д. c. и ссылка на изображение в теге <img src="">
и URL продукта в теге <a href=""></a>
с названием элемента в теге 'a'.
Вот как выглядит мой код HTML popup.html
<body>
<script src="jquery-3.4.1.min.js"></script>
<script src="background.js"></script>
<table id="jsontable">
<thead>
<tr>
<th>ASIN</th>
<th>Sales Rank</th>
<th>Title</th>
<th>Price</th>
<th>Image</th>
</tr>
</thead>
<tbody id="tablebody"></tbody>
</table>
</body>
Я застрял здесь на несколько дней, пожалуйста, помогите мне завершить этот код. Спасибо.