Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何控制HTML输出中小数点的数量?_Javascript_Html_D3.js - Fatal编程技术网

Javascript 如何控制HTML输出中小数点的数量?

Javascript 如何控制HTML输出中小数点的数量?,javascript,html,d3.js,Javascript,Html,D3.js,我有一个简单的计算,输入中有一个介于19和55之间的数字,输出显示计算结果。我不知道如何控制小数点的数量。理想情况下,我希望有1或2个小数位 以下是我目前掌握的代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Output Formatting</title> <script src="https://d3js.org/d3-f

我有一个简单的计算,输入中有一个介于19和55之间的数字,输出显示计算结果。我不知道如何控制小数点的数量。理想情况下,我希望有1或2个小数位

以下是我目前掌握的代码:

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8"> 
  <title>Output Formatting</title>
  <script src="https://d3js.org/d3-format.v1.min.js"></script>
</head>
<body>
  <form oninput="result.value=(-1.0797 * parseInt(a.value) * parseInt(a.value)) + (52.466 * parseInt(a.value) - 820.183)">
    <input id="aa" type="number" name="a" onchange="setTwoNumberDecimal" min="19" max="55" step="0.25" value="22.00" /> <br>
    <output id="polar" name="result">-</output>
  </form>
</body>
</html>

输出格式化

-
我见过一些D3.js被应用于控制格式的例子,但我不知道如何在这里实现它。该函数似乎没有运行,但我没有收到控制台错误:

<script>
function setTwoNumberDecimal(){
var format = d3.format(".3n");
var fname = d3.format(".3n")(document.getElementById('aa').value);
document.getElementById('polar').innerHTML = fname;
}
</script>

函数setTwoNumberDecimal(){
var格式=d3.格式(“.3n”);
var fname=d3.format(“.3n”)(document.getElementById('aa').value);
document.getElementById('polar')。innerHTML=fname;
}
我还有一个


use,或者您应该仔细研究从HTML中删除JS逻辑。它使读取和调试成为一场噩梦。另外,您很可能正在寻找
.toFixed()
谢谢@adam-h!Math.round()解决了这个问题。是的,我需要提高我分离HTML和JS的技能。我对JS很陌生。
<form oninput="var n=(-1.0797 * parseInt(a.value) * parseInt(a.value)) + (52.466 * 
parseInt(a.value) - 820.183); result.value = n.toFixed(2)">