gpt4 book ai didi

javascript - 如何从单选按钮获取不同的值?

转载 作者:行者123 更新时间:2023-11-28 16:44:20 24 4
gpt4 key购买 nike

我希望当我选择不同的货币时汇率会发生变化。但现在它只显示我的初始检查值。这是我的代码

   let btn = document.querySelector("button");
let priceDisplay = document.querySelector("#price");
let currency = document.querySelector('input[name=rate]:checked').value;

btn.addEventListener("click",function(){
let XHR = new XMLHttpRequest();
XHR.onreadystatechange = function(){
if(XHR.readyState == 4 && XHR.status==200){
let data = JSON.parse(XHR.responseText);
let price = data.bpi[currency].rate;
priceDisplay.innerText = price + " " + currency;
}
}
XHR.open("GET","https://api.coindesk.com/v1/bpi/currentprice.json");
XHR.send();
})
  <h1>Bitcoin Current Price is: <span id="price"></span></h1>
<p>Pick your currency: </p>
<input type="radio" id="USD" name="rate" value="USD" checked>
<label for="USD">USD</label><br>
<input type="radio" id="GBP" name="rate" value="GBP">
<label for="GBP">GBP</label><br>
<input type="radio" id="EUR" name="rate" value="EUR">
<label for="EUR">EUR</label><br>
<button>Refresh Data</button>

最佳答案

您需要输入querySelector()代码

btn.addEventListener("click",function() {
let currency = document.querySelector('input[name=rate]:checked').value;
....
}

在单击事件处理程序内。原因是因为它在点击事件触发之前只执行一次,所以它只得到了1个第一个检查的值。当您单击该按钮时,它需要新的更新值。

关于javascript - 如何从单选按钮获取不同的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60736661/

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