首页 > 解决方案 > 为什么我不能在我的 .innerHTML 中使用模板文字 API 响应?

问题描述

我正在尝试打印出 DOM 中的 API 响应数据。如您所见,我能够根据用户输入获得响应。我能够将响应打印到控制台,但我很困惑为什么下面的代码不会在 DOM 中打印出相同的信息。

if (containsItem == "1") {
    const proxyUrl = "https://cors-anywhere.herokuapp.com/",
      targetUrl =
        "http://services.runescape.com/m=itemdb_oldschool/api/catalogue/detail.json?item=";
    fetch(proxyUrl + targetUrl + i)
      .then((data) => data.json())
      .then(({ item: { id, name, current: { price } } }) =>
        console.log(`${id}: ${name} ${price}`)
      );
    document.getElementById("itemData").innerHTML = `${id}: ${name} ${price}`;
  } else {
    document.getElementById("alert").style.display = "block";
    setTimeout(function() {
      $("#alert").fadeOut("slow");
    }, 2500);
  }

我真的很感激一些帮助和更好地理解我做错了什么。先感谢您。

标签: javascriptjqueryjsonapidom

解决方案


推荐阅读