首先是我在Javascript,Ajax,jQuery,JSON和dev世界中的新人。我正在开展一个网络项目,希望通过Google Books API显示搜索结果。目前我制作的代码只显示了1个结果并且工作正常,但我在console.log中看到API显示了一个包含10个项目的数组,我想显示它们。我想显示所有这些结果,但我不知道如何做到这一点。 我的HTML代码中有一个DIV,这是我的Ajax代码
$.ajax({
url: API + libroBuscado,
success: function(data) {
var componente = `<div class="card" style="width: 20rem;">
<div class="card-body">
<h4 class="card-title">Card title</h4>
<h4 class="precio">$</h4>
<h6 class="card-subtitle mb-2 text-muted">Card subtitle</h6>
<p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p>
<a href="#" class="card-link">Descarga un adelanto</a>
<a href="#" class="card-link">Comprar</a>
</div>
</div>`;
var titulo = data.items[0].volumeInfo.title;
var venta = data.items[0].saleInfo.saleability;
var precio = "ARS $" + data.items[0].saleInfo.listPrice.amount;
var autor = data.items[0].volumeInfo.authors;
var sinopsis = data.items[0].volumeInfo.description;
var descarga = data.items[0].accessInfo.webReaderLink;
var compra = data.items[0].saleInfo.buyLink;
$(".col-12").html(componente);
$(".card-title").text(titulo);
$(".precio").text(precio);
$(".card-subtitle").text(autor);
$(".card-text").text(sinopsis);
$(".card-link:nth-of-type(0)").attr("href" + descarga);
$(".card-link:nth-of-type(1)").attr("href" + compra);
console.log(data);
},
error: function(error) {
console.log(error);
}
});
});
我在考虑制作一个for循环,但我不知道该怎么做或者它是否有用
答案 0 :(得分:0)
您需要循环遍历它们,而不是仅仅在索引0处调用项目。
像这样。
var titulo;
var venta;
var precio;
var autor;
var sinopsis;
var descarga;
var compra;
for (i = 0; i < data.items.length; i++) {
titulo = data.items[i].volumeInfo.title;
venta = data.items[i].saleInfo.saleability;
precio = "ARS $" + data.items[i].saleInfo.listPrice.amount;
autor = data.items[i].volumeInfo.authors;
sinopsis = data.items[i].volumeInfo.description;
descarga = data.items[i].accessInfo.webReaderLink;
compra = data.items[i].saleInfo.buyLink;
}