我有三个输入字段,当您在第一个字段中输入 BTC 金额时,它会为您提供等值的 BTC 美元。然后我添加了一个隐藏的输入字段,它包含一个特定的值,比方说“460”,现在我想要以美元计价的 BTC 乘以“460”并在只读输入字段中给出结果。下面的代码展示了我的解释。
$(".form-control").keyup(function() { //input[name='calc']
let convFrom;
if ($(this).prop("name") == "btc") {
convFrom = "btc";
convTo = "usd";
} else {
convFrom = "usd";
convTo = "btc";
}
$.getJSON("https://api.coindesk.com/v1/bpi/currentprice/usd.json",
function(data) {
var origAmount = parseFloat($("input[name='" + convFrom + "']").val());
var exchangeRate = parseInt(data.bpi.USD.rate_float);
let amount;
if (convFrom == "btc")
amount = parseFloat(origAmount * exchangeRate);
else
amount = parseFloat(origAmount / exchangeRate);
$("input[name='" + convTo + "']").val(amount.toFixed(2));
});
});
<script src="https://stacksnippets.net/scripts/snippet-javascript-console.min.js?v=1"></script>
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<form>
<input type="number" name="btc" class="form-control" id="validationTooltip02" placeholder="BTC">
<input type="number" name="usd" class="form-control" id="a" onkeyup="add()" placeholder="USD" readonly>
对于乘法,我在 USD 字段中添加了 onkeyup 函数,
<script type="text/javascript">
function add() {
var x = parseInt(document.getElementById("a").value);
var y = parseInt(document.getElementById("b").value)
document.getElementById("c").value = x * y;
}
</script>
然后尝试通过 ID 将结果收集到一个字段中<input name="amount" class="form-control" type="text" placeholder="0.00000" id="c" aria-label="0.00000" readonly>
如果我在 USD 字段中删除只读并直接键入,则此方法有效,但在只读时不适用于该字段中 BTC 到 USD 总和的结果。我希望我能够解释这一点。请帮忙,因为我不是专家。
HUX布斯
慕桂英3389331
相关分类