0

我正在尝试从 Google Books API 中提取并将前 10 个结果中的标题插入到网页中。我让网站拉出正确的请求,并让以下回调函数处理结果

function insert(books) {
    var list = books.items;
    var i;
    for(i = 0; i < 10; i++){
        var title = list[i].title;
    var tag = "result" + i;
    var x = document.getElementById(tag);
    x.innerHTML = title;
    }
}

为方便起见,假设进行了以下调用

<script src="https://www.googleapis.com/books/v1/volumes?q=Way of Kings&filter=partial&callback=insert"></script>

现在它在每个应该插入标题的地方插入单词“undefined”。我在这里找不到错误。

4

2 回答 2

5

响应数据已title放置在volumeInfo对象中。

代替:

var title = list[i].title;

和:

var title = list[i].volumeInfo.title;
于 2015-07-14T13:56:50.773 回答
0

title似乎从返回集合上的对象volumeInfo脱落。这对我有用:

var title = list[i].volumeInfo.title;

例子:

https://jsbin.com/puyayamuwi/edit?html,输出

于 2015-07-14T14:04:56.460 回答