javascript - AJAX API 货币
问题描述
```https://codepen.io/aparandeh/pen/yQjZma?editors=1010```
但是当我添加这个
<h1>Bitcoin Current Price is: <span id="price"></span></h1>
它只是出现在第一行的钱,但第二行什么都没有(使用相同的 id)
谁能帮我?
解决方案
这对我有用:
var btn = document.querySelector("button");
// AJAX Request
var XHR = new XMLHttpRequest();
// On page load, load the price using the default currency selected (USD)
window.addEventListener("load", function(){
refresh();
});
// On press of the referesh button load the price
btn.addEventListener("click", function()
{
refresh();
});
// Resend API request when referesh() is invoked.
function refresh()
{
// Grab the radio buttons, then loop over them and if one is checked, grab its value and send API request using the currency selected
document.getElementsByName("currency").forEach(function(data)
{
// Only run the code block if data.checked === true.
if(data.checked)
{
XHR.onreadystatechange = function()
{
if(XHR.readyState === 4 && XHR.status === 200)
{
var price = document.getElementsByClassName("price");
for (var i = 0; i < price.length; i++) {
price[i].innerHTML = JSON.parse(XHR.responseText).bpi[data.value].rate + " " + data.value;
}
}
}
XHR.open("GET", "https://api.coindesk.com/v1/bpi/currentprice.json");
XHR.send();
}
});
}
<h1>Bitcoin Current Price is: <span class="price"></span></h1>
<h1>Bitcoin Current Price is: <span class="price"></span></h1>
<form action="">
<input type="radio" name="currency" value="USD" checked> USD<br>
<input type="radio" name="currency" value="GBP"> GBP<br>
<input type="radio" name="currency" value="EUR"> EUR
</form>
<br>
<button>Referesh Data</button>
您必须写class=price
而不是id=price
. 然后您可以选择所有具有类价格的元素,然后使用for
循环您可以为每个元素执行代码。
也很抱歉我的英语不好:)
推荐阅读
- android - 使 ViewStub 覆盖 Activity
- c# - 无法确定序列化信息
- rest - 用于多个应用程序和数据库连接的烧瓶应用程序结构
- java - 在 JPA 中自动保持反向关系
- linux - Doom Emacs 中 Noto Color Emoji 和阿拉伯语之间的字体冲突
- linux - 为什么 cygwin putty cmd.exe 回滚缓冲区在 win10 上不随 GNU Screen 增长,但在 win7 上增长?
- typescript - 推断的泛型返回类型接受具有未知属性的对象
- r - 从摘要图中创建生存曲线
- python - Python split函数在while循环中不起作用
- php - Laravel - 404 | 在“/{id}”条目中未找到