gpt4 book ai didi

Javascript Fetch API 未在多张卡上显示结果

转载 作者:行者123 更新时间:2023-12-02 21:24:31 26 4
gpt4 key购买 nike

我有一个脚本,可以从链接获取数据,然后将其插入表中并向用户显示。脚本运行良好。但后来我决定让函数更加动态,所以我添加了 2 个参数 name 和 Html div 名称,数据将在其中显示。当我第一次调用该函数时它工作正常,但第二次调用时它没有显示任何数据。我在我的元素中使用 PHP,并且对 javascript 很陌生。但我在 PHP 中做了一个类似的函数,但它有效。有什么建议吗?

function getInfoByCountry(name, displayName) {
fetch("https://something.com/countries/" + name)
.then(res => res.json())
.then(data => {
output = `
<tr>
<td>Total Cases</td>
<td>${data.cases}</td>
</tr>
<tr>
<td>Today Cases</td>
<td>${data.todayCases}</td>
</tr>
<tr>
<td>Deaths</td>
<td>${data.deaths}</td>
</tr>
<tr>
<td>Recovered</td>
<td>${data.recovered}</td>
</tr>
<tr>
<td>Critical</td>
<td>${data.critical}</td>
</tr>
<tr>
<td>Active Cases</td>
<td>${data.active}</td>
</tr>
`;
document.getElementById(displayName).innerHTML = output;
});
}

getInfoByCountry("USA", "USAInfo");

getInfoByCountry("China", "ChinaInfo");
<div class="table-responsive">
<table class="table table-striped mb-0">
<tbody id="ChinaInfo">

</tbody>
</table>
</div>

最佳答案

像这样添加返回

 function getInfoByCountry(name, displayName) {
var display = document.getElementById(displayName);
return fetch("https://smthing.com/countries/"+name)
.then(res => res.json())
.then(data => {

output = `
<tr>
<td>Total Cases</td>
<td>${data.cases}</td>
</tr>
<tr>
<td>Today Cases</td>
<td>${data.todayCases}</td>
</tr>
<tr>
<td>Deaths</td>
<td>${data.deaths}</td>
</tr>
<tr>
<td>Recovered</td>
<td>${data.recovered}</td>
</tr>
<tr>
<td>Critical</td>
<td>${data.critical}</td>
</tr>
<tr>
<td>Active Cases</td>
<td>${data.active}</td>
</tr>
`;

document.getElementById(displayName).innerHTML += output;

}

);
}


getInfoByCountry("USA", "display");

getInfoByCountry("China", "display");

关于Javascript Fetch API 未在多张卡上显示结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60769213/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com