脚本:
<script type="text/javascript"> function calculate() {
var myBox1 = document.getElementById('f5').value;
var myBox2 = document.getElementById('f6').value;
var result = document.getElementById('f8');
var myResult = myBox1 * myBox2;
result.value = myResult.toFixed(2);
}
F6 定义为:
<p oninput="calculate()" id="f6" class="change change-btc-usd-cmc input-group-addon"><i>Indlæser</i></p>
使用以下 jquery 后端:
$.getJSON( "https://api.coinmarketcap.com/v1/ticker/bitcoin/", function( data ) {
$.getJSON("https://api.fixer.io/latest?base=USD", function (data2) {
change['btc-usd-cmc'] = data[0]["price_usd"] * data2.rates["DKK"];
$(".change-btc-usd-cmc").text(change['btc-usd-cmc']);
$(".change-btc-usd-cmc").text(parseFloat(change['btc-usd-cmc']).toFixed(2));
loader(false)
updateData()
})
f5 简单地定义为 html:
<input oninput="calculate()" type="text" class="form-control " id="f5" name="f5" value="" placeholder="eks. 5000"
data-rule-number="true"
data-rule-min="999"
data-rule-max="50000"
data-rule-required="true" data-msg-required="Dette felt er krævet. " />
变化定义为:
var change = {
"usd-vef-dt": null,
"btc-usd-cmc": null,
"rai-usd-cmc": null,
"eth-usd-cmc": null,
"btc-vef-lbtc": null,
"usd-vef-lbtc": null,
}
我不明白为什么它返回 NaN,它们都以数字结尾,所以这不应该是一个问题,因为 parsefloat 与 jQuery 后端一起使用,但它返回 NaN。当写入两个 oncalculate 文本输入时,它可以完美地工作。
最佳答案
呃,f6
是一个 p
元素,它没有值。所以,对于 f6
来说,值是 undefined
和 未定义 * 1 === NaN
fiddle 示例:https://jsfiddle.net/q58zpuch/
关于javascript - 将 parsefloat 字符串与 oncalculate 输入相乘时返回 NaN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48582805/