使用jQuery循环API

时间:2014-01-30 22:47:24

标签: javascript jquery

我正在尝试使用Marvel API来显示角色参与的事件列表。这是我的脚本:

$(".heroSubmit").click(function() {

var heroName = $(".hero").val();


$.getJSON("http://gateway.marvel.com:80/v1/public/characters?name=" + heroName + "&apikey=", function (json) {
  $(".name").html(json.data.results[0].name);
  $(".description").html(json.data.results[0].description);
  $(".image").attr("src", json.data.results[0].thumbnail.path + "/detail.jpg");
  $(".comics").html(json.data.results[0].comics.available);

  $.each( json.data.results[0].events.items, function(i, item) {
    $(".events").html("<li>" + item.name + "</li>");
  });

});

除了每个部分外,一切正常。现在,它只显示最后一个事件名称(item.name)。我需要显示所有事件。

1 个答案:

答案 0 :(得分:4)

这是因为您在每次迭代中重写事件的内容。为避免这种情况,请将html()替换为append()

$.each( json.data.results[0].events.items, function(i, item) {
    $(".events").append("<li>" + item.name + "</li>");
});